aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2016-07-13 16:49:40 +0000
committerGravatar Kristina Chodorow <kchodorow@google.com>2016-07-14 11:12:32 +0000
commit015aad979fc44e6477b07a4861314f2a8c15d054 (patch)
tree24658b9a4e7b3a5370ecdbd24f89d71a9837d63d /src
parent5ca52f7771eb36c1bf135655f7d665179eb7b4db (diff)
Move more things from TestConstants to AnalysisMock and LoadingMock.
Also remove other uses of TestConstants. -- MOS_MIGRATED_REVID=127327339
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/flags/InvocationPolicyEnforcer.java4
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java10
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java12
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java36
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/config/StampTest.java4
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisMock.java39
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java28
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java33
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java31
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/util/DefaultsPackageUtil.java4
-rw-r--r--src/test/java/com/google/devtools/build/lib/packages/util/LoadingMock.java52
-rw-r--r--src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java18
-rw-r--r--src/test/java/com/google/devtools/build/lib/pkgcache/AbstractTargetPatternEvaluatorTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/pkgcache/IOExceptionsTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/pkgcache/IncrementalLoadingTest.java20
-rw-r--r--src/test/java/com/google/devtools/build/lib/pkgcache/LoadingPhaseRunnerTest.java58
-rw-r--r--src/test/java/com/google/devtools/build/lib/pkgcache/PackageCacheTest.java23
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoaderTest.java4
-rw-r--r--src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java24
-rw-r--r--src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java26
-rw-r--r--src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTestCase.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java7
-rw-r--r--src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java2
25 files changed, 271 insertions, 189 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java b/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java
index 6a53d7daf0..a98be78213 100644
--- a/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/exec/SymlinkTreeHelper.java
@@ -13,6 +13,7 @@
// limitations under the License.
package com.google.devtools.build.lib.exec;
+import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Lists;
@@ -43,8 +44,8 @@ import java.util.List;
* Used to generate runfiles and fileset symlink farms.
*/
public final class SymlinkTreeHelper {
-
- private static final String BUILD_RUNFILES = "build-runfiles" + OsUtils.executableExtension();
+ @VisibleForTesting
+ public static final String BUILD_RUNFILES = "build-runfiles" + OsUtils.executableExtension();
/**
* These actions run faster overall when serialized, because most of their
diff --git a/src/main/java/com/google/devtools/build/lib/flags/InvocationPolicyEnforcer.java b/src/main/java/com/google/devtools/build/lib/flags/InvocationPolicyEnforcer.java
index c73dd5df06..b9307c4976 100644
--- a/src/main/java/com/google/devtools/build/lib/flags/InvocationPolicyEnforcer.java
+++ b/src/main/java/com/google/devtools/build/lib/flags/InvocationPolicyEnforcer.java
@@ -104,6 +104,10 @@ public final class InvocationPolicyEnforcer {
this.invocationPolicy = invocationPolicy;
}
+ public InvocationPolicy getInvocationPolicy() {
+ return invocationPolicy;
+ }
+
/**
* Applies this OptionsPolicyEnforcer's policy to the given OptionsParser for all blaze commands.
*
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java b/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java
index 8daa19701f..78cba05316 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/BlazeDirectoriesTest.java
@@ -16,7 +16,6 @@ package com.google.devtools.build.lib.analysis;
import static org.junit.Assert.assertEquals;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.vfs.FileSystem;
import com.google.devtools.build.lib.vfs.Path;
@@ -36,19 +35,16 @@ public class BlazeDirectoriesTest extends FoundationTestCase {
Path installBase = fs.getPath("/my/install");
Path outputBase = fs.getPath("/my/output");
Path workspace = fs.getPath("/my/ws");
- BlazeDirectories directories = new BlazeDirectories(installBase, outputBase, workspace,
- TestConstants.PRODUCT_NAME);
+ BlazeDirectories directories = new BlazeDirectories(installBase, outputBase, workspace, "foo");
assertEquals(directories.getExecRoot(), outputBase.getChild("ws"));
workspace = null;
- directories = new BlazeDirectories(installBase, outputBase, workspace,
- TestConstants.PRODUCT_NAME);
+ directories = new BlazeDirectories(installBase, outputBase, workspace, "foo");
assertEquals(directories.getExecRoot(),
outputBase.getChild(BlazeDirectories.DEFAULT_EXEC_ROOT));
workspace = fs.getPath("/");
- directories = new BlazeDirectories(installBase, outputBase, workspace,
- TestConstants.PRODUCT_NAME);
+ directories = new BlazeDirectories(installBase, outputBase, workspace, "foo");
assertEquals(directories.getExecRoot(),
outputBase.getChild(BlazeDirectories.DEFAULT_EXEC_ROOT));
}
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java
index 1b7f42ffa5..3f423ebe29 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java
@@ -32,7 +32,6 @@ import com.google.devtools.build.lib.analysis.actions.TemplateExpansionAction.Te
import com.google.devtools.build.lib.analysis.config.BinTools;
import com.google.devtools.build.lib.exec.util.TestExecutorBuilder;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.util.io.FileOutErr;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
import com.google.devtools.build.lib.vfs.Path;
@@ -69,11 +68,12 @@ public class TemplateExpansionActionTest extends FoundationTestCase {
substitutions = Lists.newArrayList();
substitutions.add(Substitution.of("%key%", "foo"));
substitutions.add(Substitution.of("%value%", "bar"));
- directories = new BlazeDirectories(
- scratch.resolve("/install"),
- scratch.resolve("/base"),
- scratch.resolve("/workspace"),
- TestConstants.PRODUCT_NAME);
+ directories =
+ new BlazeDirectories(
+ scratch.resolve("/install"),
+ scratch.resolve("/base"),
+ scratch.resolve("/workspace"),
+ "mock-product-name");
binTools = BinTools.empty(directories);
}
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java b/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java
index c654be1d2b..873b6c4fda 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/config/BuildConfigurationTest.java
@@ -29,7 +29,6 @@ import com.google.devtools.build.lib.rules.cpp.CppConfiguration;
import com.google.devtools.build.lib.rules.cpp.CppOptions;
import com.google.devtools.build.lib.rules.java.JavaConfiguration;
import com.google.devtools.build.lib.rules.objc.J2ObjcConfiguration;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.common.options.Options;
import org.junit.Test;
@@ -47,7 +46,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testBasics() throws Exception {
- if (getAnalysisMock().isThisBazel()) {
+ if (analysisMock.isThisBazel()) {
return;
}
@@ -69,7 +68,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testPlatformSuffix() throws Exception {
- if (getAnalysisMock().isThisBazel()) {
+ if (analysisMock.isThisBazel()) {
return;
}
@@ -80,7 +79,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testEnvironment() throws Exception {
- if (getAnalysisMock().isThisBazel()) {
+ if (analysisMock.isThisBazel()) {
return;
}
@@ -106,7 +105,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testHostCrosstoolTop() throws Exception {
- if (getAnalysisMock().isThisBazel()) {
+ if (analysisMock.isThisBazel()) {
return;
}
@@ -157,7 +156,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testMultiCpu() throws Exception {
- if (getAnalysisMock().isThisBazel()) {
+ if (analysisMock.isThisBazel()) {
return;
}
@@ -174,7 +173,7 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
*/
@Test
public void testMultiCpuSorting() throws Exception {
- if (getAnalysisMock().isThisBazel()) {
+ if (analysisMock.isThisBazel()) {
return;
}
@@ -236,10 +235,11 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testCycleInFragments() throws Exception {
- configurationFactory = new ConfigurationFactory(
- getAnalysisMock().createConfigurationCollectionFactory(),
- createMockFragment(CppConfiguration.class, JavaConfiguration.class),
- createMockFragment(JavaConfiguration.class, CppConfiguration.class));
+ configurationFactory =
+ new ConfigurationFactory(
+ analysisMock.createConfigurationCollectionFactory(),
+ createMockFragment(CppConfiguration.class, JavaConfiguration.class),
+ createMockFragment(JavaConfiguration.class, CppConfiguration.class));
try {
createCollection();
fail();
@@ -250,9 +250,10 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testMissingFragment() throws Exception {
- configurationFactory = new ConfigurationFactory(
- getAnalysisMock().createConfigurationCollectionFactory(),
- createMockFragment(CppConfiguration.class, JavaConfiguration.class));
+ configurationFactory =
+ new ConfigurationFactory(
+ analysisMock.createConfigurationCollectionFactory(),
+ createMockFragment(CppConfiguration.class, JavaConfiguration.class));
try {
createCollection();
fail();
@@ -308,9 +309,10 @@ public class BuildConfigurationTest extends ConfigurationTestCase {
@Test
public void testEqualsOrIsSupersetOf() throws Exception {
BuildConfiguration config = create();
- BuildConfiguration trimmedConfig = config.clone(
- ImmutableSet.<Class<? extends Fragment>>of(CppConfiguration.class),
- TestRuleClassProvider.getRuleClassProvider());
+ BuildConfiguration trimmedConfig =
+ config.clone(
+ ImmutableSet.<Class<? extends Fragment>>of(CppConfiguration.class),
+ analysisMock.createRuleClassProvider());
BuildConfiguration hostConfig = createHost();
assertTrue(config.equalsOrIsSupersetOf(trimmedConfig));
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/config/StampTest.java b/src/test/java/com/google/devtools/build/lib/analysis/config/StampTest.java
index 03b9e8676e..1875088c53 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/config/StampTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/config/StampTest.java
@@ -22,7 +22,6 @@ import com.google.devtools.build.lib.packages.RuleClass;
import com.google.devtools.build.lib.packages.RuleFactory;
import com.google.devtools.build.lib.packages.TargetUtils;
import com.google.devtools.build.lib.packages.TriState;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -40,8 +39,7 @@ public class StampTest extends BuildViewTestCase {
public void testNoStampingForTests() throws Exception {
RuleFactory ruleFactory =
new RuleFactory(
- TestRuleClassProvider.getRuleClassProvider(),
- AttributeContainer.ATTRIBUTE_CONTAINER_FACTORY);
+ analysisMock.createRuleClassProvider(), AttributeContainer.ATTRIBUTE_CONTAINER_FACTORY);
for (String name : ruleFactory.getRuleClassNames()) {
RuleClass ruleClass = ruleFactory.getRuleClass(name);
if (TargetUtils.isTestRuleName(name) && ruleClass.hasAttr("stamp", BuildType.TRISTATE)) {
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisMock.java b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisMock.java
index 27351e4ff9..d01db4f360 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisMock.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisMock.java
@@ -13,11 +13,14 @@
// limitations under the License.
package com.google.devtools.build.lib.analysis.util;
+import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.analysis.ConfigurationCollectionFactory;
import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
import com.google.devtools.build.lib.analysis.config.ConfigurationFactory;
import com.google.devtools.build.lib.flags.InvocationPolicyEnforcer;
+import com.google.devtools.build.lib.packages.PackageFactory;
+import com.google.devtools.build.lib.packages.util.LoadingMock;
import com.google.devtools.build.lib.packages.util.MockCcSupport;
import com.google.devtools.build.lib.packages.util.MockToolsConfig;
import com.google.devtools.build.lib.rules.repository.LocalRepositoryFunction;
@@ -36,10 +39,8 @@ import java.lang.reflect.Field;
import java.util.Collection;
import java.util.concurrent.atomic.AtomicBoolean;
-/**
- * Create a mock client for the analysis phase, as well as a configuration factory.
- */
-public abstract class AnalysisMock {
+/** Create a mock client for the analysis phase, as well as a configuration factory. */
+public abstract class AnalysisMock extends LoadingMock {
public static AnalysisMock get() {
try {
@@ -51,6 +52,31 @@ public abstract class AnalysisMock {
}
}
+ @Override
+ public String getProductName() {
+ return TestConstants.PRODUCT_NAME;
+ }
+
+ public ImmutableList<String> getEmbeddedTools() {
+ return TestConstants.EMBEDDED_TOOLS;
+ }
+
+ @Override
+ public PackageFactory.FactoryForTesting getPackageFactoryForTesting() {
+ return TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING;
+ }
+
+ @Override
+ public InvocationPolicyEnforcer getInvocationPolicyEnforcer() {
+ return new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ }
+
+ @Override
+ public String getDefaultsPackageContent() {
+ return createRuleClassProvider()
+ .getDefaultsPackageContent(getInvocationPolicyEnforcer().getInvocationPolicy());
+ }
+
/**
* This is called from test setup to create the mock directory layout needed to create the
* configuration.
@@ -67,14 +93,11 @@ public abstract class AnalysisMock {
public abstract ConfigurationCollectionFactory createConfigurationCollectionFactory();
+ @Override
public abstract ConfiguredRuleClassProvider createRuleClassProvider();
public abstract Collection<String> getOptionOverrides();
- public InvocationPolicyEnforcer getInvocationPolicyEnforcer() {
- return new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
- }
-
public abstract boolean isThisBazel();
public abstract MockCcSupport ccSupport();
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java
index 461da15285..f7ffb7083a 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java
@@ -57,7 +57,6 @@ import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.Preconditions;
@@ -118,6 +117,7 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
protected BlazeDirectories directories;
protected MockToolsConfig mockToolsConfig;
+ protected AnalysisMock analysisMock;
private OptionsParser optionsParser;
protected PackageManager packageManager;
private LoadingPhaseRunner loadingPhaseRunner;
@@ -133,14 +133,13 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
protected AnalysisTestUtil.DummyWorkspaceStatusActionFactory workspaceStatusActionFactory;
private PathPackageLocator pkgLocator;
- private AnalysisMock analysisMock;
@Before
public final void createMocks() throws Exception {
analysisMock = getAnalysisMock();
pkgLocator = new PathPackageLocator(outputBase, ImmutableList.of(rootDirectory));
- directories = new BlazeDirectories(outputBase, outputBase, rootDirectory,
- TestConstants.PRODUCT_NAME);
+ directories =
+ new BlazeDirectories(outputBase, outputBase, rootDirectory, analysisMock.getProductName());
workspaceStatusActionFactory =
new AnalysisTestUtil.DummyWorkspaceStatusActionFactory(directories);
@@ -149,7 +148,7 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
analysisMock.setupMockWorkspaceFiles(directories.getEmbeddedBinariesRoot());
configurationFactory = analysisMock.createConfigurationFactory();
- useRuleClassProvider(TestRuleClassProvider.getRuleClassProvider());
+ useRuleClassProvider(analysisMock.createRuleClassProvider());
}
/**
@@ -158,9 +157,11 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
protected void useRuleClassProvider(ConfiguredRuleClassProvider ruleClassProvider)
throws Exception {
this.ruleClassProvider = ruleClassProvider;
- PackageFactory pkgFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider, scratch.getFileSystem());
- BinTools binTools = BinTools.forUnitTesting(directories, TestConstants.EMBEDDED_TOOLS);
+ PackageFactory pkgFactory =
+ analysisMock
+ .getPackageFactoryForTesting()
+ .create(ruleClassProvider, scratch.getFileSystem());
+ BinTools binTools = BinTools.forUnitTesting(directories, analysisMock.getEmbeddedTools());
skyframeExecutor =
SequencedSkyframeExecutor.create(
pkgFactory,
@@ -174,13 +175,14 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
analysisMock.getSkyFunctions(),
getPrecomputedValues(),
ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ analysisMock.getProductName());
skyframeExecutor.preparePackageLoading(
pkgLocator,
Options.getDefaults(PackageCacheOptions.class).defaultVisibility,
true,
3,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ ruleClassProvider.getDefaultsPackageContent(
+ analysisMock.getInvocationPolicyEnforcer().getInvocationPolicy()),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
packageManager = skyframeExecutor.getPackageManager();
@@ -224,8 +226,7 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
optionsParser.parse("--experimental_dynamic_configs");
}
- InvocationPolicyEnforcer optionsPolicyEnforcer =
- new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ InvocationPolicyEnforcer optionsPolicyEnforcer = analysisMock.getInvocationPolicyEnforcer();
optionsPolicyEnforcer.enforce(optionsParser);
}
@@ -288,7 +289,8 @@ public abstract class AnalysisTestCase extends FoundationTestCase {
packageCacheOptions.defaultVisibility,
true,
7,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ ruleClassProvider.getDefaultsPackageContent(
+ analysisMock.getInvocationPolicyEnforcer().getInvocationPolicy()),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
skyframeExecutor.invalidateFilesUnderPathForTesting(reporter,
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 f8c4db9c9f..f84fd302d9 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
@@ -125,7 +125,6 @@ import com.google.devtools.build.lib.skyframe.SequencedSkyframeExecutor;
import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.testutil.BlazeTestUtils;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.FileType;
import com.google.devtools.build.lib.util.Preconditions;
@@ -160,6 +159,7 @@ import java.util.UUID;
public abstract class BuildViewTestCase extends FoundationTestCase {
protected static final int LOADING_PHASE_THREADS = 20;
+ protected AnalysisMock analysisMock;
protected ConfiguredRuleClassProvider ruleClassProvider;
protected ConfigurationFactory configurationFactory;
protected BuildView view;
@@ -187,25 +187,28 @@ public abstract class BuildViewTestCase extends FoundationTestCase {
@Before
public final void initializeSkyframeExecutor() throws Exception {
- AnalysisMock mock = getAnalysisMock();
- directories = new BlazeDirectories(outputBase, outputBase, rootDirectory,
- TestConstants.PRODUCT_NAME);
- binTools = BinTools.forUnitTesting(directories, TestConstants.EMBEDDED_TOOLS);
+ analysisMock = getAnalysisMock();
+ directories =
+ new BlazeDirectories(outputBase, outputBase, rootDirectory, analysisMock.getProductName());
+ binTools = BinTools.forUnitTesting(directories, analysisMock.getEmbeddedTools());
mockToolsConfig = new MockToolsConfig(rootDirectory, false);
- mock.setupMockClient(mockToolsConfig);
- mock.setupMockWorkspaceFiles(directories.getEmbeddedBinariesRoot());
+ analysisMock.setupMockClient(mockToolsConfig);
+ analysisMock.setupMockWorkspaceFiles(directories.getEmbeddedBinariesRoot());
- configurationFactory = mock.createConfigurationFactory();
+ configurationFactory = analysisMock.createConfigurationFactory();
packageCacheOptions = parsePackageCacheOptions();
workspaceStatusActionFactory =
new AnalysisTestUtil.DummyWorkspaceStatusActionFactory(directories);
mutableActionGraph = new MapBasedActionGraph();
ruleClassProvider = getRuleClassProvider();
- pkgFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider,
- getPlatformSetRegexps(),
- getEnvironmentExtensions(),
- scratch.getFileSystem());
+ pkgFactory =
+ analysisMock
+ .getPackageFactoryForTesting()
+ .create(
+ ruleClassProvider,
+ getPlatformSetRegexps(),
+ getEnvironmentExtensions(),
+ scratch.getFileSystem());
tsgm = new TimestampGranularityMonitor(BlazeClock.instance());
skyframeExecutor =
SequencedSkyframeExecutor.create(
@@ -217,10 +220,10 @@ public abstract class BuildViewTestCase extends FoundationTestCase {
ImmutableList.<DiffAwareness.Factory>of(),
Predicates.<PathFragment>alwaysFalse(),
getPreprocessorFactorySupplier(),
- mock.getSkyFunctions(),
+ analysisMock.getSkyFunctions(),
getPrecomputedValues(),
ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ analysisMock.getProductName());
skyframeExecutor.preparePackageLoading(
new PathPackageLocator(outputBase, ImmutableList.of(rootDirectory)),
ConstantRuleVisibility.PUBLIC, true, 7, "",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java
index 267f49bb88..4bead55dfd 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java
@@ -40,8 +40,6 @@ import com.google.devtools.build.lib.skyframe.PrecomputedValue;
import com.google.devtools.build.lib.skyframe.SequencedSkyframeExecutor;
import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
import com.google.devtools.build.lib.vfs.Path;
@@ -78,31 +76,34 @@ public abstract class ConfigurationTestCase extends FoundationTestCase {
public List<String> multiCpus;
}
+ protected Path workspace;
+ protected AnalysisMock analysisMock;
protected SequencedSkyframeExecutor skyframeExecutor;
protected ConfigurationFactory configurationFactory;
- protected Path workspace;
protected ImmutableList<Class<? extends FragmentOptions>> buildOptionClasses;
@Before
public final void initializeSkyframeExecutor() throws Exception {
workspace = rootDirectory;
- ConfiguredRuleClassProvider ruleClassProvider = TestRuleClassProvider.getRuleClassProvider();
+ analysisMock = getAnalysisMock();
+ ConfiguredRuleClassProvider ruleClassProvider = analysisMock.createRuleClassProvider();
PathPackageLocator pkgLocator =
new PathPackageLocator(outputBase, ImmutableList.of(rootDirectory));
final PackageFactory pkgFactory;
- BlazeDirectories directories = new BlazeDirectories(outputBase, outputBase, rootDirectory,
- TestConstants.PRODUCT_NAME);
- pkgFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider, scratch.getFileSystem());
+ BlazeDirectories directories =
+ new BlazeDirectories(outputBase, outputBase, rootDirectory, analysisMock.getProductName());
+ pkgFactory =
+ analysisMock
+ .getPackageFactoryForTesting()
+ .create(ruleClassProvider, scratch.getFileSystem());
AnalysisTestUtil.DummyWorkspaceStatusActionFactory workspaceStatusActionFactory =
new AnalysisTestUtil.DummyWorkspaceStatusActionFactory(directories);
- AnalysisMock analysisMock = getAnalysisMock();
skyframeExecutor =
SequencedSkyframeExecutor.create(
pkgFactory,
directories,
- BinTools.forUnitTesting(directories, TestConstants.EMBEDDED_TOOLS),
+ BinTools.forUnitTesting(directories, analysisMock.getEmbeddedTools()),
workspaceStatusActionFactory,
ruleClassProvider.getBuildInfoFactories(),
ImmutableList.<DiffAwareness.Factory>of(),
@@ -111,21 +112,22 @@ public abstract class ConfigurationTestCase extends FoundationTestCase {
analysisMock.getSkyFunctions(),
ImmutableList.<PrecomputedValue.Injected>of(),
ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ analysisMock.getProductName());
skyframeExecutor.preparePackageLoading(
pkgLocator,
Options.getDefaults(PackageCacheOptions.class).defaultVisibility,
true,
7,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ ruleClassProvider.getDefaultsPackageContent(
+ analysisMock.getInvocationPolicyEnforcer().getInvocationPolicy()),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
analysisMock.setupMockClient(new MockToolsConfig(rootDirectory));
analysisMock.setupMockWorkspaceFiles(directories.getEmbeddedBinariesRoot());
configurationFactory = analysisMock.createConfigurationFactory();
- buildOptionClasses = TestRuleClassProvider.getRuleClassProvider().getConfigurationOptions();
+ buildOptionClasses = ruleClassProvider.getConfigurationOptions();
}
protected AnalysisMock getAnalysisMock() {
@@ -150,8 +152,7 @@ public abstract class ConfigurationTestCase extends FoundationTestCase {
.build());
parser.parse(args);
- InvocationPolicyEnforcer optionsPolicyEnforcer =
- new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ InvocationPolicyEnforcer optionsPolicyEnforcer = analysisMock.getInvocationPolicyEnforcer();
optionsPolicyEnforcer.enforce(parser);
ImmutableSortedSet<String> multiCpu = ImmutableSortedSet.copyOf(
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/DefaultsPackageUtil.java b/src/test/java/com/google/devtools/build/lib/analysis/util/DefaultsPackageUtil.java
index d8a4c5662e..d0aef7ab57 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/DefaultsPackageUtil.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/DefaultsPackageUtil.java
@@ -19,7 +19,6 @@ import com.google.devtools.build.lib.analysis.config.BuildOptions;
import com.google.devtools.build.lib.analysis.config.DefaultsPackage;
import com.google.devtools.build.lib.analysis.config.FragmentOptions;
import com.google.devtools.build.lib.flags.InvocationPolicyEnforcer;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.common.options.OptionsBase;
import com.google.devtools.common.options.OptionsParser;
import com.google.devtools.common.options.OptionsParsingException;
@@ -36,8 +35,7 @@ public class DefaultsPackageUtil {
BuildConfiguration.Options.class, optionsClass));
parser.parse(options);
- InvocationPolicyEnforcer enforcer =
- new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ InvocationPolicyEnforcer enforcer = AnalysisMock.get().getInvocationPolicyEnforcer();
enforcer.enforce(parser);
return DefaultsPackage.getDefaultsPackageContent(BuildOptions.of(
diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/LoadingMock.java b/src/test/java/com/google/devtools/build/lib/packages/util/LoadingMock.java
new file mode 100644
index 0000000000..f08e502b21
--- /dev/null
+++ b/src/test/java/com/google/devtools/build/lib/packages/util/LoadingMock.java
@@ -0,0 +1,52 @@
+// Copyright 2016 The Bazel Authors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+package com.google.devtools.build.lib.packages.util;
+
+import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
+import com.google.devtools.build.lib.flags.InvocationPolicyEnforcer;
+import com.google.devtools.build.lib.packages.PackageFactory;
+import com.google.devtools.build.lib.testutil.TestConstants;
+import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
+
+/** Create a mock client for the loading phase, as well as a configuration factory. */
+public class LoadingMock {
+ public static LoadingMock get() {
+ return new LoadingMock();
+ }
+
+ public String getProductName() {
+ return TestConstants.PRODUCT_NAME;
+ }
+
+ public PackageFactory.FactoryForTesting getPackageFactoryForTesting() {
+ return TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING;
+ }
+
+ public ConfiguredRuleClassProvider createRuleClassProvider() {
+ return TestRuleClassProvider.getRuleClassProvider();
+ }
+
+ public InvocationPolicyEnforcer getInvocationPolicyEnforcer() {
+ return new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ }
+
+ /**
+ * Returns the defaults package for the default settings using {@link #createRuleClassProvider}
+ * and applying {@link #getInvocationPolicyEnforcer}.
+ */
+ public String getDefaultsPackageContent() {
+ return createRuleClassProvider()
+ .getDefaultsPackageContent(getInvocationPolicyEnforcer().getInvocationPolicy());
+ }
+}
diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java b/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java
index 36f7b1f665..8b8d039055 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java
@@ -41,7 +41,6 @@ import com.google.devtools.build.lib.skyframe.SequencedSkyframeExecutor;
import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
@@ -68,12 +67,14 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase {
private static final int GLOBBING_THREADS = 7;
+ protected LoadingMock loadingMock;
protected ConfiguredRuleClassProvider ruleClassProvider;
protected PackageFactory packageFactory;
protected SkyframeExecutor skyframeExecutor;
@Before
public final void initializeSkyframeExecutor() throws Exception {
+ loadingMock = LoadingMock.get();
List<RuleDefinition> extraRules = getExtraRules();
if (!extraRules.isEmpty()) {
ConfiguredRuleClassProvider.Builder builder = new ConfiguredRuleClassProvider.Builder();
@@ -83,10 +84,12 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase {
}
ruleClassProvider = builder.build();
} else {
- ruleClassProvider = TestRuleClassProvider.getRuleClassProvider();
+ ruleClassProvider = loadingMock.createRuleClassProvider();
}
- packageFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider, null, getEnvironmentExtensions(), scratch.getFileSystem());
+ packageFactory =
+ loadingMock
+ .getPackageFactoryForTesting()
+ .create(ruleClassProvider, null, getEnvironmentExtensions(), scratch.getFileSystem());
skyframeExecutor = createSkyframeExecutor(getPreprocessorFactorySupplier());
setUpSkyframe(parsePackageCacheOptions());
}
@@ -101,7 +104,8 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase {
SkyframeExecutor skyframeExecutor =
SequencedSkyframeExecutor.create(
packageFactory,
- new BlazeDirectories(outputBase, outputBase, rootDirectory, TestConstants.PRODUCT_NAME),
+ new BlazeDirectories(
+ outputBase, outputBase, rootDirectory, loadingMock.getProductName()),
null, /* BinTools */
null, /* workspaceStatusActionFactory */
ruleClassProvider.getBuildInfoFactories(),
@@ -111,7 +115,7 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase {
ImmutableMap.<SkyFunctionName, SkyFunction>of(),
ImmutableList.<PrecomputedValue.Injected>of(),
ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ loadingMock.getProductName());
return skyframeExecutor;
}
@@ -138,7 +142,7 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase {
packageCacheOptions.defaultVisibility,
true,
GLOBBING_THREADS,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ loadingMock.getDefaultsPackageContent(),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.getDeletedPackages()));
diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/AbstractTargetPatternEvaluatorTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/AbstractTargetPatternEvaluatorTest.java
index f4ba91e515..8464cef09f 100644
--- a/src/test/java/com/google/devtools/build/lib/pkgcache/AbstractTargetPatternEvaluatorTest.java
+++ b/src/test/java/com/google/devtools/build/lib/pkgcache/AbstractTargetPatternEvaluatorTest.java
@@ -24,7 +24,6 @@ import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.packages.ConstantRuleVisibility;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.packages.util.PackageLoadingTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.util.Pair;
import org.junit.Before;
@@ -74,9 +73,7 @@ public abstract class AbstractTargetPatternEvaluatorTest extends PackageLoadingT
@Before
public final void initializeParser() throws Exception {
- setUpSkyframe(
- ConstantRuleVisibility.PRIVATE,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY));
+ setUpSkyframe(ConstantRuleVisibility.PRIVATE, loadingMock.getDefaultsPackageContent());
parser = skyframeExecutor.getPackageManager().newTargetPatternEvaluator();
parsingListener = new RecordingParsingListener(reporter);
}
diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/IOExceptionsTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/IOExceptionsTest.java
index 8203ab3838..901e0bfabf 100644
--- a/src/test/java/com/google/devtools/build/lib/pkgcache/IOExceptionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/pkgcache/IOExceptionsTest.java
@@ -23,7 +23,6 @@ import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.packages.ConstantRuleVisibility;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.packages.util.PackageLoadingTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.vfs.FileStatus;
import com.google.devtools.build.lib.vfs.FileSystem;
@@ -64,9 +63,7 @@ public class IOExceptionsTest extends PackageLoadingTestCase {
@Before
public final void initializeVisitor() throws Exception {
- setUpSkyframe(
- ConstantRuleVisibility.PRIVATE,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY));
+ setUpSkyframe(ConstantRuleVisibility.PRIVATE, loadingMock.getDefaultsPackageContent());
this.visitor = skyframeExecutor.pkgLoader();
}
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 76ce0b408c..3a2798f240 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
@@ -34,6 +34,7 @@ import com.google.devtools.build.lib.packages.Package;
import com.google.devtools.build.lib.packages.Preprocessor;
import com.google.devtools.build.lib.packages.Rule;
import com.google.devtools.build.lib.packages.Target;
+import com.google.devtools.build.lib.packages.util.LoadingMock;
import com.google.devtools.build.lib.skyframe.DiffAwareness;
import com.google.devtools.build.lib.skyframe.PrecomputedValue;
import com.google.devtools.build.lib.skyframe.SequencedSkyframeExecutor;
@@ -41,8 +42,6 @@ import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.syntax.GlobList;
import com.google.devtools.build.lib.testutil.ManualClock;
-import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.Preconditions;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
@@ -465,22 +464,27 @@ public class IncrementalLoadingTest {
outputBase.createDirectory();
addFile("WORKSPACE");
+ LoadingMock loadingMock = LoadingMock.get();
skyframeExecutor =
SequencedSkyframeExecutor.create(
- TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- TestRuleClassProvider.getRuleClassProvider(), fs),
- new BlazeDirectories(fs.getPath("/install"), fs.getPath("/output"), workspace,
- TestConstants.PRODUCT_NAME),
+ loadingMock
+ .getPackageFactoryForTesting()
+ .create(loadingMock.createRuleClassProvider(), fs),
+ new BlazeDirectories(
+ fs.getPath("/install"),
+ fs.getPath("/output"),
+ workspace,
+ loadingMock.getProductName()),
null, /* BinTools */
null, /* workspaceStatusActionFactory */
- TestRuleClassProvider.getRuleClassProvider().getBuildInfoFactories(),
+ loadingMock.createRuleClassProvider().getBuildInfoFactories(),
ImmutableList.of(new ManualDiffAwarenessFactory()),
Predicates.<PathFragment>alwaysFalse(),
supplier,
ImmutableMap.<SkyFunctionName, SkyFunction>of(),
ImmutableList.<PrecomputedValue.Injected>of(),
ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ loadingMock.getProductName());
skyframeExecutor.preparePackageLoading(
new PathPackageLocator(outputBase, ImmutableList.of(workspace)),
ConstantRuleVisibility.PUBLIC, true, 7, "",
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 3bc277b553..480078162e 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
@@ -32,6 +32,7 @@ import com.google.common.eventbus.EventBus;
import com.google.common.eventbus.Subscribe;
import com.google.devtools.build.lib.analysis.BlazeDirectories;
import com.google.devtools.build.lib.analysis.BuildView;
+import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
import com.google.devtools.build.lib.analysis.util.AnalysisMock;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.cmdline.PackageIdentifier;
@@ -51,8 +52,6 @@ import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker;
import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.testutil.ManualClock;
import com.google.devtools.build.lib.testutil.MoreAsserts;
-import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.Preconditions;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
import com.google.devtools.build.lib.vfs.FileSystem;
@@ -71,11 +70,9 @@ import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import java.io.IOException;
-import java.util.AbstractMap;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
-import java.util.Map;
import java.util.Set;
import java.util.UUID;
import java.util.logging.Level;
@@ -595,14 +592,11 @@ public class LoadingPhaseRunnerTest {
return loadingResult;
}
- private <K, V> Map.Entry<K, V> entryFor(K key, V value) {
- return new AbstractMap.SimpleImmutableEntry<>(key, value);
- }
-
private static class LoadingPhaseTester {
private final ManualClock clock = new ManualClock();
private final Path workspace;
+ private final AnalysisMock analysisMock;
private final SkyframeExecutor skyframeExecutor;
private final List<Path> changes = new ArrayList<>();
@@ -622,28 +616,35 @@ public class LoadingPhaseRunnerTest {
this.workspace = fs.getPath("/workspace");
workspace.createDirectory();
mockToolsConfig = new MockToolsConfig(workspace);
- AnalysisMock.get().setupMockClient(mockToolsConfig);
+ analysisMock = AnalysisMock.get();
+ analysisMock.setupMockClient(mockToolsConfig);
FileSystemUtils.deleteTree(workspace.getRelative("base"));
- PackageFactory pkgFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- TestRuleClassProvider.getRuleClassProvider(), fs);
+ ConfiguredRuleClassProvider ruleClassProvider = analysisMock.createRuleClassProvider();
+ PackageFactory pkgFactory =
+ analysisMock.getPackageFactoryForTesting().create(ruleClassProvider, fs);
PackageCacheOptions options = Options.getDefaults(PackageCacheOptions.class);
storedErrors = new StoredEventHandler();
BlazeDirectories directories =
- new BlazeDirectories(fs.getPath("/install"), fs.getPath("/output"), workspace,
- TestConstants.PRODUCT_NAME);
- skyframeExecutor = SequencedSkyframeExecutor.create(pkgFactory,
- directories,
- null, /* binTools -- not used */
- null, /* workspaceStatusActionFactory -- not used */
- TestRuleClassProvider.getRuleClassProvider().getBuildInfoFactories(),
- ImmutableList.<DiffAwareness.Factory>of(),
- Predicates.<PathFragment>alwaysFalse(),
- Preprocessor.Factory.Supplier.NullSupplier.INSTANCE,
- AnalysisMock.get().getSkyFunctions(),
- ImmutableList.<PrecomputedValue.Injected>of(),
- ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ new BlazeDirectories(
+ fs.getPath("/install"),
+ fs.getPath("/output"),
+ workspace,
+ analysisMock.getProductName());
+ skyframeExecutor =
+ SequencedSkyframeExecutor.create(
+ pkgFactory,
+ directories,
+ null, /* binTools -- not used */
+ null, /* workspaceStatusActionFactory -- not used */
+ ruleClassProvider.getBuildInfoFactories(),
+ ImmutableList.<DiffAwareness.Factory>of(),
+ Predicates.<PathFragment>alwaysFalse(),
+ Preprocessor.Factory.Supplier.NullSupplier.INSTANCE,
+ analysisMock.getSkyFunctions(),
+ ImmutableList.<PrecomputedValue.Injected>of(),
+ ImmutableList.<SkyValueDirtinessChecker>of(),
+ analysisMock.getProductName());
PathPackageLocator pkgLocator = PathPackageLocator.create(
null, options.packagePath, storedErrors, workspace, workspace);
skyframeExecutor.preparePackageLoading(
@@ -651,8 +652,7 @@ public class LoadingPhaseRunnerTest {
ConstantRuleVisibility.PRIVATE,
true,
7,
- TestRuleClassProvider.getRuleClassProvider()
- .getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ analysisMock.getDefaultsPackageContent(),
UUID.randomUUID(),
new TimestampGranularityMonitor(clock));
loadingPhaseRunner = skyframeExecutor.getLoadingPhaseRunner(
@@ -732,9 +732,7 @@ public class LoadingPhaseRunnerTest {
}
private void sync() throws InterruptedException {
- String pkgContents =
- TestRuleClassProvider.getRuleClassProvider()
- .getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY);
+ String pkgContents = analysisMock.getDefaultsPackageContent();
skyframeExecutor.setupDefaultPackage(pkgContents);
clock.advanceMillis(1);
ModifiedFileSet.Builder builder = ModifiedFileSet.builder();
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 1e2034b9df..9afcce146f 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
@@ -48,8 +48,6 @@ import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.syntax.BuildFileAST;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
import com.google.devtools.build.lib.testutil.MoreAsserts;
-import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
import com.google.devtools.build.lib.vfs.ModifiedFileSet;
@@ -75,19 +73,21 @@ import java.util.UUID;
@RunWith(JUnit4.class)
public class PackageCacheTest extends FoundationTestCase {
+ private AnalysisMock analysisMock;
private ConfiguredRuleClassProvider ruleClassProvider;
private SkyframeExecutor skyframeExecutor;
@Before
public final void initializeSkyframeExecutor() throws Exception {
- ruleClassProvider = TestRuleClassProvider.getRuleClassProvider();
- BlazeDirectories directories = new BlazeDirectories(outputBase, outputBase, rootDirectory,
- TestConstants.PRODUCT_NAME);
+ analysisMock = AnalysisMock.get();
+ ruleClassProvider = analysisMock.createRuleClassProvider();
+ BlazeDirectories directories =
+ new BlazeDirectories(outputBase, outputBase, rootDirectory, analysisMock.getProductName());
skyframeExecutor =
SequencedSkyframeExecutor.create(
- TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider,
- scratch.getFileSystem()),
+ analysisMock
+ .getPackageFactoryForTesting()
+ .create(ruleClassProvider, scratch.getFileSystem()),
directories,
null, /* BinTools */
null, /* workspaceStatusActionFactory */
@@ -98,7 +98,7 @@ public class PackageCacheTest extends FoundationTestCase {
AnalysisMock.get().getSkyFunctions(),
ImmutableList.<PrecomputedValue.Injected>of(),
ImmutableList.<SkyValueDirtinessChecker>of(),
- TestConstants.PRODUCT_NAME);
+ analysisMock.getProductName());
setUpSkyframe(parsePackageCacheOptions());
}
@@ -110,7 +110,7 @@ public class PackageCacheTest extends FoundationTestCase {
packageCacheOptions.defaultVisibility,
true,
7,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ analysisMock.getDefaultsPackageContent(),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.getDeletedPackages()));
@@ -121,8 +121,7 @@ public class PackageCacheTest extends FoundationTestCase {
parser.parse(new String[] { "--default_visibility=public" });
parser.parse(options);
- InvocationPolicyEnforcer optionsPolicyEnforcer =
- new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ InvocationPolicyEnforcer optionsPolicyEnforcer = analysisMock.getInvocationPolicyEnforcer();
try {
optionsPolicyEnforcer.enforce(parser);
} catch (OptionsParsingException e) {
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoaderTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoaderTest.java
index 4f26eb6bab..d2d84e9ebf 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoaderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CrosstoolConfigurationLoaderTest.java
@@ -43,6 +43,7 @@ import com.google.devtools.build.lib.vfs.PathFragment;
import com.google.devtools.build.lib.view.config.crosstool.CrosstoolConfig.LipoMode;
import com.google.devtools.common.options.OptionsParser;
import com.google.devtools.common.options.OptionsParsingException;
+
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -65,8 +66,7 @@ public class CrosstoolConfigurationLoaderTest extends AnalysisTestCase {
OptionsParser optionsParser = OptionsParser.newOptionsParser(testFragments);
try {
optionsParser.parse(args);
- InvocationPolicyEnforcer optionsPolicyEnforcer =
- new InvocationPolicyEnforcer(TestConstants.TEST_INVOCATION_POLICY);
+ InvocationPolicyEnforcer optionsPolicyEnforcer = analysisMock.getInvocationPolicyEnforcer();
optionsPolicyEnforcer.enforce(optionsParser);
} catch (OptionsParsingException e) {
throw new IllegalStateException(e);
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
index 3a9565c29a..2b35fa1495 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/PackageLookupFunctionTest.java
@@ -23,6 +23,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.common.testing.EqualsTester;
import com.google.devtools.build.lib.analysis.BlazeDirectories;
+import com.google.devtools.build.lib.analysis.util.AnalysisMock;
import com.google.devtools.build.lib.bazel.rules.BazelRulesModule;
import com.google.devtools.build.lib.cmdline.PackageIdentifier;
import com.google.devtools.build.lib.events.NullEventHandler;
@@ -30,8 +31,6 @@ import com.google.devtools.build.lib.packages.RuleClassProvider;
import com.google.devtools.build.lib.pkgcache.PathPackageLocator;
import com.google.devtools.build.lib.skyframe.PackageLookupValue.ErrorReason;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -69,11 +68,13 @@ public class PackageLookupFunctionTest extends FoundationTestCase {
Path emptyPackagePath = rootDirectory.getRelative("somewhere/else");
scratch.file("parentpackage/BUILD");
+ AnalysisMock analysisMock = AnalysisMock.get();
AtomicReference<PathPackageLocator> pkgLocator = new AtomicReference<>(
new PathPackageLocator(outputBase, ImmutableList.of(emptyPackagePath, rootDirectory)));
deletedPackages = new AtomicReference<>(ImmutableSet.<PackageIdentifier>of());
- BlazeDirectories directories = new BlazeDirectories(rootDirectory, outputBase, rootDirectory,
- TestConstants.PRODUCT_NAME);
+ BlazeDirectories directories =
+ new BlazeDirectories(
+ rootDirectory, outputBase, rootDirectory, analysisMock.getProductName());
ExternalFilesHelper externalFilesHelper = new ExternalFilesHelper(
pkgLocator, false, directories);
@@ -88,17 +89,18 @@ public class PackageLookupFunctionTest extends FoundationTestCase {
skyFunctions.put(SkyFunctions.FILE, new FileFunction(pkgLocator));
skyFunctions.put(SkyFunctions.BLACKLISTED_PACKAGE_PREFIXES,
new BlacklistedPackagePrefixesFunction());
- RuleClassProvider ruleClassProvider = TestRuleClassProvider.getRuleClassProvider();
- skyFunctions.put(SkyFunctions.WORKSPACE_AST,
- new WorkspaceASTFunction(TestRuleClassProvider.getRuleClassProvider()));
+ RuleClassProvider ruleClassProvider = analysisMock.createRuleClassProvider();
+ skyFunctions.put(SkyFunctions.WORKSPACE_AST, new WorkspaceASTFunction(ruleClassProvider));
skyFunctions.put(
SkyFunctions.WORKSPACE_FILE,
new WorkspaceFileFunction(
ruleClassProvider,
- TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider,
- new BazelRulesModule().getPackageEnvironmentExtension(),
- scratch.getFileSystem()),
+ analysisMock
+ .getPackageFactoryForTesting()
+ .create(
+ ruleClassProvider,
+ new BazelRulesModule().getPackageEnvironmentExtension(),
+ scratch.getFileSystem()),
directories));
skyFunctions.put(SkyFunctions.EXTERNAL_PACKAGE, new ExternalPackageFunction());
differencer = new RecordingDifferencer();
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java
index eefaf572fc..7841f36184 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/RecursiveFilesystemTraversalFunctionTest.java
@@ -30,14 +30,14 @@ import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.FilesetTraversalParams.PackageBoundaryMode;
import com.google.devtools.build.lib.actions.Root;
import com.google.devtools.build.lib.analysis.BlazeDirectories;
+import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
+import com.google.devtools.build.lib.analysis.util.AnalysisMock;
import com.google.devtools.build.lib.cmdline.PackageIdentifier;
import com.google.devtools.build.lib.events.NullEventHandler;
import com.google.devtools.build.lib.pkgcache.PathPackageLocator;
import com.google.devtools.build.lib.skyframe.RecursiveFilesystemTraversalValue.ResolvedFile;
import com.google.devtools.build.lib.skyframe.RecursiveFilesystemTraversalValue.TraversalRequest;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.util.Preconditions;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
import com.google.devtools.build.lib.vfs.Path;
@@ -81,17 +81,19 @@ public final class RecursiveFilesystemTraversalFunctionTest extends FoundationTe
@Before
public final void setUp() throws Exception {
+ AnalysisMock analysisMock = AnalysisMock.get();
pkgLocator = new AtomicReference<>(
new PathPackageLocator(outputBase, ImmutableList.of(rootDirectory)));
AtomicReference<ImmutableSet<PackageIdentifier>> deletedPackages =
new AtomicReference<>(ImmutableSet.<PackageIdentifier>of());
- BlazeDirectories directories = new BlazeDirectories(rootDirectory, outputBase, rootDirectory,
- TestConstants.PRODUCT_NAME);
+ BlazeDirectories directories =
+ new BlazeDirectories(
+ rootDirectory, outputBase, rootDirectory, analysisMock.getProductName());
ExternalFilesHelper externalFilesHelper = new ExternalFilesHelper(
pkgLocator, false, directories);
+ ConfiguredRuleClassProvider ruleClassProvider = analysisMock.createRuleClassProvider();
Map<SkyFunctionName, SkyFunction> skyFunctions = new HashMap<>();
-
skyFunctions.put(SkyFunctions.FILE_STATE, new FileStateFunction(
new AtomicReference<TimestampGranularityMonitor>(), externalFilesHelper));
skyFunctions.put(SkyFunctions.FILE, new FileFunction(pkgLocator));
@@ -108,12 +110,14 @@ public final class RecursiveFilesystemTraversalFunctionTest extends FoundationTe
new PackageFunction(null, null, null, null, null, null, null));
skyFunctions.put(SkyFunctions.PACKAGE_LOOKUP,
new PackageLookupFunction(deletedPackages));
- skyFunctions.put(SkyFunctions.WORKSPACE_AST,
- new WorkspaceASTFunction(TestRuleClassProvider.getRuleClassProvider()));
- skyFunctions.put(SkyFunctions.WORKSPACE_FILE,
- new WorkspaceFileFunction(TestRuleClassProvider.getRuleClassProvider(),
- TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- TestRuleClassProvider.getRuleClassProvider(), scratch.getFileSystem()),
+ skyFunctions.put(SkyFunctions.WORKSPACE_AST, new WorkspaceASTFunction(ruleClassProvider));
+ skyFunctions.put(
+ SkyFunctions.WORKSPACE_FILE,
+ new WorkspaceFileFunction(
+ ruleClassProvider,
+ analysisMock
+ .getPackageFactoryForTesting()
+ .create(ruleClassProvider, scratch.getFileSystem()),
directories));
skyFunctions.put(SkyFunctions.EXTERNAL_PACKAGE, new ExternalPackageFunction());
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTest.java
index a167135efb..b5a9494758 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTest.java
@@ -26,7 +26,6 @@ import com.google.devtools.build.lib.events.EventKind;
import com.google.devtools.build.lib.packages.ConstantRuleVisibility;
import com.google.devtools.build.lib.packages.util.SubincludePreprocessor;
import com.google.devtools.build.lib.pkgcache.PathPackageLocator;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.util.BlazeClock;
import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor;
import com.google.devtools.build.lib.vfs.FileStatus;
@@ -409,7 +408,7 @@ public class SkyframeLabelVisitorTest extends SkyframeLabelVisitorTestCase {
ConstantRuleVisibility.PRIVATE,
true,
7,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ loadingMock.getDefaultsPackageContent(),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
this.visitor = getSkyframeExecutor().pkgLoader();
@@ -453,7 +452,7 @@ public class SkyframeLabelVisitorTest extends SkyframeLabelVisitorTestCase {
ConstantRuleVisibility.PRIVATE,
true,
7,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY),
+ loadingMock.getDefaultsPackageContent(),
UUID.randomUUID(),
new TimestampGranularityMonitor(BlazeClock.instance()));
this.visitor = getSkyframeExecutor().pkgLoader();
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTestCase.java b/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTestCase.java
index 81caf1fc99..25ddfc3b3c 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitorTestCase.java
@@ -38,7 +38,6 @@ import com.google.devtools.build.lib.packages.util.PackageLoadingTestCase;
import com.google.devtools.build.lib.packages.util.PreprocessorUtils;
import com.google.devtools.build.lib.pkgcache.TransitivePackageLoader;
import com.google.devtools.build.lib.testutil.ManualClock;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.vfs.FileStatus;
import com.google.devtools.build.lib.vfs.FileSystem;
import com.google.devtools.build.lib.vfs.ModifiedFileSet;
@@ -282,9 +281,7 @@ abstract public class SkyframeLabelVisitorTestCase extends PackageLoadingTestCas
@Before
public final void initializeVisitor() throws Exception {
- setUpSkyframe(
- ConstantRuleVisibility.PRIVATE,
- ruleClassProvider.getDefaultsPackageContent(TestConstants.TEST_INVOCATION_POLICY));
+ setUpSkyframe(ConstantRuleVisibility.PRIVATE, loadingMock.getDefaultsPackageContent());
this.visitor = skyframeExecutor.pkgLoader();
}
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java
index 9f6d170b5c..5e5fb7d482 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java
@@ -36,7 +36,6 @@ import com.google.devtools.build.lib.skylark.util.SkylarkTestCase;
import com.google.devtools.build.lib.syntax.SkylarkDict;
import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
-import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -712,7 +711,7 @@ public class SkylarkRuleContextTest extends SkylarkTestCase {
public void testFeatures() throws Exception {
SkylarkRuleContext ruleContext = createRuleContext("//foo:cc_with_features");
Object result = evalRuleContextCode(ruleContext, "ruleContext.features");
- assertThat((SkylarkList) result).containsExactly("cc_include_scanning", "f1", "f2");
+ assertThat((SkylarkList<?>) result).containsExactly("cc_include_scanning", "f1", "f2");
}
@@ -725,9 +724,11 @@ public class SkylarkRuleContextTest extends SkylarkTestCase {
@Test
public void testWorkspaceName() throws Exception {
+ assertThat(ruleClassProvider.getRunfilesPrefix()).isNotNull();
+ assertThat(ruleClassProvider.getRunfilesPrefix()).isNotEmpty();
SkylarkRuleContext ruleContext = createRuleContext("//foo:foo");
Object result = evalRuleContextCode(ruleContext, "ruleContext.workspace_name");
- assertSame(result, TestConstants.WORKSPACE_NAME);
+ assertSame(result, ruleClassProvider.getRunfilesPrefix());
}
@Test
diff --git a/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java b/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java
index 580bff9ba5..7b269dd15e 100644
--- a/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java
@@ -82,7 +82,7 @@ public class StandaloneSpawnStrategyTest {
@Before
public final void setUp() throws Exception {
Path testRoot = createTestRoot();
- Path workspaceDir = testRoot.getRelative(TestConstants.WORKSPACE_NAME);
+ Path workspaceDir = testRoot.getRelative("workspace-name");
workspaceDir.createDirectory();
// setup output base & directories