diff options
author | 2016-01-20 20:06:28 +0000 | |
---|---|---|
committer | 2016-01-21 10:34:49 +0000 | |
commit | bd9f25c593a140acb15d3fd3fc7f66d091e1a898 (patch) | |
tree | 8a91d7d3aeb44f0e226138f73aa34fb4c49f1505 /src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java | |
parent | e87849b8d391af8f5d98e3a91e680e88a1264b64 (diff) |
Add a DEVELOPER_DIR make variable to genrules to propagate the apple xcode environment variable DEVELOPER_DIR to commands.
If $(DEVELOPER_DIR) is included in the genrule command, we bootstrap the XCODE_VERSION_OVERRIDE environment variable to the command.
The contract with the actual action executor is, if XCODE_VERSION_OVERRIDE is present in the environment, to additionally bootstrap the DEVELOPER_DIR absolute path to the command.
--
MOS_MIGRATED_REVID=112605616
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java index 32f8027723..e763627037 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java @@ -219,12 +219,26 @@ public abstract class BuildViewTestCase extends FoundationTestCase { new PathPackageLocator(outputBase, ImmutableList.of(rootDirectory)), ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); + // The below call evaluates and caches the build graph. If any modifications are made to + // packages which have already been set up, they will not be in the current cached build graph + // view. Call {@link #invalidateAllFiles} to clear this cache. useConfiguration(); setUpSkyframe(); // Also initializes ResourceManager. ResourceManager.instance().setAvailableResources(getStartingResources()); } + /** + * Clears the current build graph cache by invalidating all files. + */ + protected void invalidateAllFiles() throws InterruptedException { + // This is necessary as the build graph may have already been evaluated and cached. If so, + // the previous setup steps in this method would not be taken into account in any of the + // build graphs for this class's tests. + getSkyframeExecutor().invalidateFilesUnderPathForTesting(reporter, + ModifiedFileSet.EVERYTHING_MODIFIED, rootDirectory); + } + protected AnalysisMock getAnalysisMock() { try { Class<?> providerClass = Class.forName(TestConstants.TEST_ANALYSIS_MOCK); |