From 52d05e880e453698be7ae9486020ad21977339ad Mon Sep 17 00:00:00 2001 From: janakr Date: Fri, 22 Sep 2017 13:27:14 -0400 Subject: Inject BlazeDirectories into FdoSupportFunction directly, instead of depending on a precomputed value. BlazeDirectories don't change over the lifetime of the Blaze server, and certainly not over the lifetime of a SkyframeExecutor instance, which already had a reference to them. The goal is getting rid of the precomputed value entirely, but since this change necessitated a fair number of testing changes, I'm mailing this out as a first step. PiperOrigin-RevId: 169705474 --- .../build/lib/pkgcache/BuildFileModificationTest.java | 4 ++-- .../build/lib/pkgcache/IncrementalLoadingTest.java | 12 +++++++----- .../build/lib/pkgcache/LoadingPhaseRunnerTest.java | 15 ++++++++------- .../devtools/build/lib/pkgcache/PackageCacheTest.java | 4 ++-- 4 files changed, 19 insertions(+), 16 deletions(-) (limited to 'src/test/java/com/google/devtools/build/lib/pkgcache') diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/BuildFileModificationTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/BuildFileModificationTest.java index fb7581b24f..e43d35432d 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/BuildFileModificationTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/BuildFileModificationTest.java @@ -81,7 +81,7 @@ public class BuildFileModificationTest extends FoundationTestCase { skyframeExecutor = SequencedSkyframeExecutor.create( analysisMock - .getPackageFactoryBuilderForTesting() + .getPackageFactoryBuilderForTesting(directories) .build(ruleClassProvider, scratch.getFileSystem()), directories, null, /* BinTools */ @@ -89,7 +89,7 @@ public class BuildFileModificationTest extends FoundationTestCase { ruleClassProvider.getBuildInfoFactories(), ImmutableList.of(), Predicates.alwaysFalse(), - AnalysisMock.get().getSkyFunctions(), + analysisMock.getSkyFunctions(directories), ImmutableList.of(), ImmutableList.of(), PathFragment.EMPTY_FRAGMENT, diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/IncrementalLoadingTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/IncrementalLoadingTest.java index 2afdf03977..36378e3b10 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/IncrementalLoadingTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/IncrementalLoadingTest.java @@ -463,15 +463,17 @@ public class IncrementalLoadingTest { addFile("WORKSPACE"); LoadingMock loadingMock = LoadingMock.get(); + BlazeDirectories directories = + new BlazeDirectories( + new ServerDirectories(fs.getPath("/install"), fs.getPath("/output")), + workspace, + loadingMock.getProductName()); skyframeExecutor = SequencedSkyframeExecutor.create( loadingMock - .getPackageFactoryBuilderForTesting() + .getPackageFactoryBuilderForTesting(directories) .build(loadingMock.createRuleClassProvider(), fs), - new BlazeDirectories( - new ServerDirectories(fs.getPath("/install"), fs.getPath("/output")), - workspace, - loadingMock.getProductName()), + directories, null, /* BinTools */ null, /* workspaceStatusActionFactory */ loadingMock.createRuleClassProvider().getBuildInfoFactories(), diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/LoadingPhaseRunnerTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/LoadingPhaseRunnerTest.java index 5849ce6c1c..8db6217610 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/LoadingPhaseRunnerTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/LoadingPhaseRunnerTest.java @@ -589,6 +589,7 @@ public class LoadingPhaseRunnerTest { private final List changes = new ArrayList<>(); private final LoadingPhaseRunner loadingPhaseRunner; + private final BlazeDirectories directories; private LoadingOptions options; private final StoredEventHandler storedErrors; @@ -606,18 +607,18 @@ public class LoadingPhaseRunnerTest { mockToolsConfig = new MockToolsConfig(workspace); analysisMock = AnalysisMock.get(); analysisMock.setupMockClient(mockToolsConfig); + directories = + new BlazeDirectories( + new ServerDirectories(fs.getPath("/install"), fs.getPath("/output")), + workspace, + analysisMock.getProductName()); FileSystemUtils.deleteTree(workspace.getRelative("base")); ConfiguredRuleClassProvider ruleClassProvider = analysisMock.createRuleClassProvider(); PackageFactory pkgFactory = - analysisMock.getPackageFactoryBuilderForTesting().build(ruleClassProvider, fs); + analysisMock.getPackageFactoryBuilderForTesting(directories).build(ruleClassProvider, fs); PackageCacheOptions options = Options.getDefaults(PackageCacheOptions.class); storedErrors = new StoredEventHandler(); - BlazeDirectories directories = - new BlazeDirectories( - new ServerDirectories(fs.getPath("/install"), fs.getPath("/output")), - workspace, - analysisMock.getProductName()); skyframeExecutor = SequencedSkyframeExecutor.create( pkgFactory, @@ -627,7 +628,7 @@ public class LoadingPhaseRunnerTest { ruleClassProvider.getBuildInfoFactories(), ImmutableList.of(), Predicates.alwaysFalse(), - analysisMock.getSkyFunctions(), + analysisMock.getSkyFunctions(directories), ImmutableList.of(), ImmutableList.of(), PathFragment.EMPTY_FRAGMENT, diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/PackageCacheTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/PackageCacheTest.java index 1cffeb741d..5f6619f094 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/PackageCacheTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/PackageCacheTest.java @@ -85,7 +85,7 @@ public class PackageCacheTest extends FoundationTestCase { rootDirectory, analysisMock.getProductName()); PackageFactory.BuilderForTesting packageFactoryBuilder = - analysisMock.getPackageFactoryBuilderForTesting(); + analysisMock.getPackageFactoryBuilderForTesting(directories); if (!doPackageLoadingChecks) { packageFactoryBuilder.disableChecks(); } @@ -98,7 +98,7 @@ public class PackageCacheTest extends FoundationTestCase { ruleClassProvider.getBuildInfoFactories(), ImmutableList.of(), Predicates.alwaysFalse(), - AnalysisMock.get().getSkyFunctions(), + analysisMock.getSkyFunctions(directories), ImmutableList.of(), ImmutableList.of(), PathFragment.EMPTY_FRAGMENT, -- cgit v1.2.3