diff options
Diffstat (limited to 'src/test/java/com/google/devtools')
38 files changed, 266 insertions, 205 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/actions/ArtifactFactoryTest.java b/src/test/java/com/google/devtools/build/lib/actions/ArtifactFactoryTest.java index 2e491b17e0..ec8c39b571 100644 --- a/src/test/java/com/google/devtools/build/lib/actions/ArtifactFactoryTest.java +++ b/src/test/java/com/google/devtools/build/lib/actions/ArtifactFactoryTest.java @@ -79,11 +79,11 @@ public class ArtifactFactoryTest { outRoot = Root.asDerivedRoot(execRoot, execRoot.getRelative("out-root/x/bin")); fooPath = new PathFragment("foo"); - fooPackage = PackageIdentifier.createInDefaultRepo(fooPath); + fooPackage = PackageIdentifier.createInMainRepo(fooPath); fooRelative = fooPath.getRelative("foosource.txt"); barPath = new PathFragment("foo/bar"); - barPackage = PackageIdentifier.createInDefaultRepo(barPath); + barPackage = PackageIdentifier.createInMainRepo(barPath); barRelative = barPath.getRelative("barsource.txt"); alienPath = new PathFragment("external/alien"); @@ -152,7 +152,7 @@ public class ArtifactFactoryTest { // We need a package in the root directory to make every exec path (even one with up-level // references) be in a package. Map<PackageIdentifier, Root> packageRoots = ImmutableMap.of( - PackageIdentifier.createInDefaultRepo(new PathFragment("")), clientRoot); + PackageIdentifier.createInMainRepo(new PathFragment("")), clientRoot); artifactFactory.setPackageRoots(packageRoots); PathFragment outsideWorkspace = new PathFragment("../foo"); PathFragment insideWorkspace = diff --git a/src/test/java/com/google/devtools/build/lib/analysis/AspectTest.java b/src/test/java/com/google/devtools/build/lib/analysis/AspectTest.java index d4f2801ccc..f5ac38c30b 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/AspectTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/AspectTest.java @@ -326,7 +326,7 @@ public class AspectTest extends AnalysisTestCase { NestedSet<ExtraActionArtifactsProvider.ExtraArtifactSet> extraActionArtifacts = a.getProvider(ExtraActionArtifactsProvider.class) .getTransitiveExtraActionArtifacts(); - assertThat(getOnlyElement(extraActionArtifacts).getLabel()).isEqualTo(Label.create("a", "b")); + assertThat(getOnlyElement(extraActionArtifacts).getLabel()).isEqualTo(Label.create("@//a", "b")); } diff --git a/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java b/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java index 61335a0132..bda0f7a156 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java @@ -97,7 +97,7 @@ public class LabelExpanderTest extends BuildViewTestCase { * Creates fake label in package "foo". */ private static Label labelFor(String targetName) throws LabelSyntaxException { - return Label.create("foo", targetName); + return Label.create("@//foo", targetName); } /** diff --git a/src/test/java/com/google/devtools/build/lib/analysis/select/AggregatingAttributeMapperTest.java b/src/test/java/com/google/devtools/build/lib/analysis/select/AggregatingAttributeMapperTest.java index f4370c8f04..4aafb58752 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/select/AggregatingAttributeMapperTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/select/AggregatingAttributeMapperTest.java @@ -53,7 +53,7 @@ public class AggregatingAttributeMapperTest extends AbstractAttributeMapperTest "sh_binary(name = 'myrule',", " srcs = ['a.sh'])"); assertThat(AggregatingAttributeMapper.of(rule).visitAttribute("srcs", BuildType.LABEL_LIST)) - .containsExactlyElementsIn(ImmutableList.of(ImmutableList.of(Label.create("a", "a.sh")))); + .containsExactlyElementsIn(ImmutableList.of(ImmutableList.of(Label.create("@//a", "a.sh")))); } /** @@ -72,9 +72,9 @@ public class AggregatingAttributeMapperTest extends AbstractAttributeMapperTest assertThat(AggregatingAttributeMapper.of(rule).visitAttribute("srcs", BuildType.LABEL_LIST)) .containsExactlyElementsIn( ImmutableList.of( - ImmutableList.of(Label.create("a", "a.sh")), - ImmutableList.of(Label.create("a", "b.sh")), - ImmutableList.of(Label.create("a", "default.sh")))); + ImmutableList.of(Label.create("@//a", "a.sh")), + ImmutableList.of(Label.create("@//a", "b.sh")), + ImmutableList.of(Label.create("@//a", "default.sh")))); } @Test @@ -91,10 +91,10 @@ public class AggregatingAttributeMapperTest extends AbstractAttributeMapperTest assertThat(AggregatingAttributeMapper.of(rule).visitAttribute("srcs", BuildType.LABEL_LIST)) .containsExactlyElementsIn( ImmutableList.of( - ImmutableList.of(Label.create("a", "a1.sh"), Label.create("a", "a2.sh")), - ImmutableList.of(Label.create("a", "a1.sh"), Label.create("a", "b2.sh")), - ImmutableList.of(Label.create("a", "b1.sh"), Label.create("a", "a2.sh")), - ImmutableList.of(Label.create("a", "b1.sh"), Label.create("a", "b2.sh")))); + ImmutableList.of(Label.create("@//a", "a1.sh"), Label.create("@//a", "a2.sh")), + ImmutableList.of(Label.create("@//a", "a1.sh"), Label.create("@//a", "b2.sh")), + ImmutableList.of(Label.create("@//a", "b1.sh"), Label.create("@//a", "a2.sh")), + ImmutableList.of(Label.create("@//a", "b1.sh"), Label.create("@//a", "b2.sh")))); } /** @@ -156,11 +156,12 @@ public class AggregatingAttributeMapperTest extends AbstractAttributeMapperTest " }))"); ImmutableList<Label> valueLabels = ImmutableList.of( - Label.create("x", "a.cc"), Label.create("x", "b.cc"), Label.create("x", "always.cc"), - Label.create("x", "c.cc"), Label.create("x", "d.cc"), Label.create("x", "default.cc")); + Label.create("@//x", "a.cc"), Label.create("@//x", "b.cc"), + Label.create("@//x", "always.cc"), Label.create("@//x", "c.cc"), + Label.create("@//x", "d.cc"), Label.create("@//x", "default.cc")); ImmutableList<Label> keyLabels = ImmutableList.of( - Label.create("conditions", "a"), Label.create("conditions", "b"), - Label.create("conditions", "c"), Label.create("conditions", "d")); + Label.create("@//conditions", "a"), Label.create("@//conditions", "b"), + Label.create("@//conditions", "c"), Label.create("@//conditions", "d")); AggregatingAttributeMapper mapper = AggregatingAttributeMapper.of(rule); assertThat(mapper.getReachableLabels("srcs", true)) diff --git a/src/test/java/com/google/devtools/build/lib/analysis/select/RawAttributeMapperTest.java b/src/test/java/com/google/devtools/build/lib/analysis/select/RawAttributeMapperTest.java index 0d9c7616aa..b0d4354af8 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/select/RawAttributeMapperTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/select/RawAttributeMapperTest.java @@ -64,7 +64,8 @@ public class RawAttributeMapperTest extends AbstractAttributeMapperTest { RawAttributeMapper rawMapper = RawAttributeMapper.of(setupGenRule()); List<Label> value = rawMapper.get("data", BuildType.LABEL_LIST); assertNotNull(value); - assertThat(value).containsExactly(Label.create("x", "data_a"), Label.create("x", "data_b")); + assertThat(value).containsExactly( + Label.create("@//x", "data_a"), Label.create("@//x", "data_b")); // Configurable attribute: trying to directly access from a RawAttributeMapper throws a // type mismatch exception. 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 70d68212a0..c2b8333635 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 @@ -124,6 +124,7 @@ import com.google.devtools.build.lib.skyframe.DiffAwareness; 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.BlazeTestUtils; import com.google.devtools.build.lib.testutil.FoundationTestCase; import com.google.devtools.build.lib.testutil.TestConstants; import com.google.devtools.build.lib.testutil.TestRuleClassProvider; @@ -311,7 +312,7 @@ public abstract class BuildViewTestCase extends FoundationTestCase { packageCacheOptions.defaultVisibility, true, 7, ruleClassProvider.getDefaultsPackageContent(optionsParser), UUID.randomUUID()); - skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.deletedPackages)); + skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.getDeletedPackages())); } protected void setPackageCacheOptions(String... options) throws Exception { @@ -377,7 +378,7 @@ public abstract class BuildViewTestCase extends FoundationTestCase { view.setConfigurationsForTesting(masterConfig); view.setArtifactRoots( - ImmutableMap.of(PackageIdentifier.createInDefaultRepo(""), rootDirectory), masterConfig); + ImmutableMap.of(PackageIdentifier.createInMainRepo(""), rootDirectory), masterConfig); simulateLoadingPhase(); } @@ -567,8 +568,8 @@ public abstract class BuildViewTestCase extends FoundationTestCase { Collection<Label> targets, Collection<Label> labels, boolean keepGoing) throws InterruptedException, NoSuchTargetException, NoSuchPackageException { boolean success = visitor.sync(reporter, - ImmutableSet.copyOf(getTargets(targets)), - ImmutableSet.copyOf(labels), + getTargets(BlazeTestUtils.convertLabels(targets)), + ImmutableSet.copyOf(BlazeTestUtils.convertLabels(labels)), keepGoing, /*parallelThreads=*/4, /*maxDepth=*/Integer.MAX_VALUE); @@ -623,7 +624,8 @@ public abstract class BuildViewTestCase extends FoundationTestCase { protected ConfiguredTarget getConfiguredTarget(Label label, BuildConfiguration config) throws NoSuchPackageException, NoSuchTargetException, InterruptedException { ensureTargetsVisited(label); - return view.getConfiguredTargetForTesting(reporter, label, config); + return view.getConfiguredTargetForTesting( + reporter, BlazeTestUtils.convertLabel(label), config); } /** @@ -1468,7 +1470,7 @@ public abstract class BuildViewTestCase extends FoundationTestCase { reporter.removeHandler(failFastHandler); scratch.file("" + packageName + "/BUILD", lines); return getPackageManager() - .getPackage(reporter, PackageIdentifier.createInDefaultRepo(packageName)); + .getPackage(reporter, PackageIdentifier.createInMainRepo(packageName)); } /** diff --git a/src/test/java/com/google/devtools/build/lib/cmdline/LabelTest.java b/src/test/java/com/google/devtools/build/lib/cmdline/LabelTest.java index cbb3bec617..47dd0b1d67 100644 --- a/src/test/java/com/google/devtools/build/lib/cmdline/LabelTest.java +++ b/src/test/java/com/google/devtools/build/lib/cmdline/LabelTest.java @@ -181,7 +181,7 @@ public class LabelTest { Label relative = base.getRelative("//conditions:default"); - PackageIdentifier expected = PackageIdentifier.createInDefaultRepo("conditions"); + PackageIdentifier expected = PackageIdentifier.createInMainRepo("conditions"); assertEquals(expected.getRepository(), relative.getPackageIdentifier().getRepository()); assertEquals(expected.getPackageFragment(), relative.getPackageFragment()); assertEquals("default", relative.getName()); @@ -206,7 +206,7 @@ public class LabelTest { Label mainBase = Label.parseAbsolute("@//foo/bar:baz"); Label externalTarget = Label.parseAbsolute("//external:target"); Label l = defaultBase.resolveRepositoryRelative(externalTarget); - assertTrue(l.getPackageIdentifier().getRepository().isDefault()); + assertTrue(l.getPackageIdentifier().getRepository().isMain()); assertEquals("external", l.getPackageName()); assertEquals("target", l.getName()); assertEquals(l, repoBase.resolveRepositoryRelative(externalTarget)); @@ -241,9 +241,9 @@ public class LabelTest { @Test public void testToString() throws Exception { { - String s = "//foo/bar:baz"; + String s = "@//foo/bar:baz"; Label l = Label.parseAbsolute(s); - assertEquals(s, l.toString()); + assertEquals("//foo/bar:baz", l.toString()); } { Label l = Label.parseAbsolute("//foo/bar"); @@ -390,17 +390,17 @@ public class LabelTest { @Test public void testSerializationSimple() throws Exception { - checkSerialization("//a", 92); + checkSerialization("//a", 93); } @Test public void testSerializationNested() throws Exception { - checkSerialization("//foo/bar:baz", 100); + checkSerialization("//foo/bar:baz", 101); } @Test public void testSerializationWithoutTargetName() throws Exception { - checkSerialization("//foo/bar", 100); + checkSerialization("//foo/bar", 101); } private void checkSerialization(String labelString, int expectedSize) throws Exception { diff --git a/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java b/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java index 2e43b80315..a2a133cb90 100644 --- a/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java +++ b/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java @@ -39,17 +39,21 @@ public class PackageIdentifierTest { PackageIdentifier fooA = PackageIdentifier.parse("@foo//a"); assertThat(fooA.getRepository().strippedName()).isEqualTo("foo"); assertThat(fooA.getPackageFragment().getPathString()).isEqualTo("a"); + assertThat(fooA.getRepository().getPathFragment()).isEqualTo( + new PathFragment("external/foo")); PackageIdentifier absoluteA = PackageIdentifier.parse("//a"); assertThat(absoluteA.getRepository().strippedName()).isEqualTo(""); - assertThat(fooA.getPackageFragment().getPathString()).isEqualTo("a"); + assertThat(absoluteA.getPackageFragment().getPathString()).isEqualTo("a"); PackageIdentifier plainA = PackageIdentifier.parse("a"); assertThat(plainA.getRepository().strippedName()).isEqualTo(""); - assertThat(fooA.getPackageFragment().getPathString()).isEqualTo("a"); + assertThat(plainA.getPackageFragment().getPathString()).isEqualTo("a"); PackageIdentifier mainA = PackageIdentifier.parse("@//a"); assertThat(mainA.getRepository()).isEqualTo(PackageIdentifier.MAIN_REPOSITORY_NAME); + assertThat(mainA.getPackageFragment().getPathString()).isEqualTo("a"); + assertThat(mainA.getRepository().getPathFragment()).isEqualTo(PathFragment.EMPTY_FRAGMENT); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/packages/BuildTypeTest.java b/src/test/java/com/google/devtools/build/lib/packages/BuildTypeTest.java index ad3df44b6f..a5754a4860 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/BuildTypeTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/BuildTypeTest.java @@ -106,9 +106,9 @@ public class BuildTypeTest { assertEquals(BuildType.LABEL, selector.getOriginalType()); Map<Label, Label> expectedMap = ImmutableMap.of( - Label.parseAbsolute("//conditions:a"), Label.create("a", "a"), - Label.parseAbsolute("//conditions:b"), Label.create("b", "b"), - Label.parseAbsolute(BuildType.Selector.DEFAULT_CONDITION_KEY), Label.create("d", "d")); + Label.parseAbsolute("//conditions:a"), Label.create("@//a", "a"), + Label.parseAbsolute("//conditions:b"), Label.create("@//b", "b"), + Label.parseAbsolute(BuildType.Selector.DEFAULT_CONDITION_KEY), Label.create("@//d", "d")); assertThat(selector.getEntries().entrySet()).containsExactlyElementsIn(expectedMap.entrySet()); } @@ -156,7 +156,7 @@ public class BuildTypeTest { "//conditions:b", "//b:b", BuildType.Selector.DEFAULT_CONDITION_KEY, "//d:d"); assertEquals( - Label.create("d", "d"), + Label.create("@//d", "d"), new Selector<Label>(input, null, currentRule, BuildType.LABEL).getDefault()); } @@ -179,15 +179,15 @@ public class BuildTypeTest { List<Selector<List<Label>>> selectors = selectorList.getSelectors(); assertThat(selectors.get(0).getEntries().entrySet()) .containsExactlyElementsIn( - ImmutableMap.of( - Label.parseAbsolute("//conditions:a"), ImmutableList.of(Label.create("a", "a")), - Label.parseAbsolute("//conditions:b"), ImmutableList.of(Label.create("b", "b"))) + ImmutableMap.of(Label.parseAbsolute("//conditions:a"), + ImmutableList.of(Label.create("@//a", "a")), Label.parseAbsolute("//conditions:b"), + ImmutableList.of(Label.create("@//b", "b"))) .entrySet()); assertThat(selectors.get(1).getEntries().entrySet()) .containsExactlyElementsIn( ImmutableMap.of( - Label.parseAbsolute("//conditions:c"), ImmutableList.of(Label.create("c", "c")), - Label.parseAbsolute("//conditions:d"), ImmutableList.of(Label.create("d", "d"))) + Label.parseAbsolute("//conditions:c"), ImmutableList.of(Label.create("@//c", "c")), + Label.parseAbsolute("//conditions:d"), ImmutableList.of(Label.create("@//d", "d"))) .entrySet()); } @@ -218,7 +218,8 @@ public class BuildTypeTest { SelectorList.of(new SelectorValue(ImmutableMap.of( "//conditions:a", nativeInput, BuildType.Selector.DEFAULT_CONDITION_KEY, nativeInput))); - List<Label> expectedLabels = ImmutableList.of(Label.create("a", "a1"), Label.create("a", "a2")); + List<Label> expectedLabels = + ImmutableList.of(Label.create("@//a", "a1"), Label.create("@//a", "a2")); // Conversion to direct type: Object converted = BuildType diff --git a/src/test/java/com/google/devtools/build/lib/packages/EnvironmentGroupTest.java b/src/test/java/com/google/devtools/build/lib/packages/EnvironmentGroupTest.java index 7b8cbe8855..771322a0c3 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/EnvironmentGroupTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/EnvironmentGroupTest.java @@ -57,7 +57,7 @@ public class EnvironmentGroupTest extends PackageLoadingTestCase { PackageFactory pkgFactory = new PackageFactory(TestRuleClassProvider.getRuleClassProvider()); pkg = pkgFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("pkg"), buildfile, getPackageManager(), reporter); + PackageIdentifier.createInMainRepo("pkg"), buildfile, getPackageManager(), reporter); group = (EnvironmentGroup) pkg.getTarget("group"); } diff --git a/src/test/java/com/google/devtools/build/lib/packages/GlobCacheTest.java b/src/test/java/com/google/devtools/build/lib/packages/GlobCacheTest.java index d744b42060..62f5ca1f0c 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/GlobCacheTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/GlobCacheTest.java @@ -92,7 +92,7 @@ public class GlobCacheTest { scratch.file("isolated/sub/sub.js", "# this is sub/sub.js"); - cache = new GlobCache(packageDirectory, PackageIdentifier.createInDefaultRepo("isolated"), + cache = new GlobCache(packageDirectory, PackageIdentifier.createInMainRepo("isolated"), new CachingPackageLocator() { @Override public Path getBuildFileForPackage(PackageIdentifier packageId) { diff --git a/src/test/java/com/google/devtools/build/lib/packages/OutputFileTest.java b/src/test/java/com/google/devtools/build/lib/packages/OutputFileTest.java index d32a5a1c77..7401c1627d 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/OutputFileTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/OutputFileTest.java @@ -47,7 +47,7 @@ public class OutputFileTest extends PackageLoadingTestCase { " outs=['x', 'subdir/y'])"); this.pkg = packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("pkg"), buildfile, getPackageManager(), reporter); + PackageIdentifier.createInMainRepo("pkg"), buildfile, getPackageManager(), reporter); assertNoEvents(); this.rule = (Rule) pkg.getTarget("foo"); @@ -120,7 +120,7 @@ public class OutputFileTest extends PackageLoadingTestCase { reporter.removeHandler(failFastHandler); packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("two_outs"), + PackageIdentifier.createInMainRepo("two_outs"), buildfile, getPackageManager(), reporter); @@ -144,7 +144,7 @@ public class OutputFileTest extends PackageLoadingTestCase { reporter.removeHandler(failFastHandler); packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("out_is_rule"), + PackageIdentifier.createInMainRepo("out_is_rule"), buildfile, getPackageManager(), reporter); @@ -162,7 +162,7 @@ public class OutputFileTest extends PackageLoadingTestCase { reporter.removeHandler(failFastHandler); packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("two_outs"), + PackageIdentifier.createInMainRepo("two_outs"), buildfile, getPackageManager(), reporter); @@ -182,7 +182,7 @@ public class OutputFileTest extends PackageLoadingTestCase { reporter.removeHandler(failFastHandler); packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("bad_out_name"), + PackageIdentifier.createInMainRepo("bad_out_name"), buildfile, getPackageManager(), reporter); @@ -200,7 +200,7 @@ public class OutputFileTest extends PackageLoadingTestCase { reporter.removeHandler(failFastHandler); packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("cross_package_out"), + PackageIdentifier.createInMainRepo("cross_package_out"), buildfile, getPackageManager(), reporter); @@ -218,7 +218,7 @@ public class OutputFileTest extends PackageLoadingTestCase { reporter.removeHandler(failFastHandler); packageFactory.createPackageForTesting( - PackageIdentifier.createInDefaultRepo("output_called_build"), buildfile, + PackageIdentifier.createInMainRepo("output_called_build"), buildfile, getPackageManager(), reporter); assertContainsEvent("generated file 'BUILD' in rule 'a' conflicts with existing source file"); } diff --git a/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java b/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java index d9c175bafe..cefcf1592e 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java @@ -557,17 +557,14 @@ public class PackageFactoryTest extends PackageFactoryTestBase { List<Label> yesFiles = attributes(pkg.getRule("yes")).get("srcs", BuildType.LABEL_LIST); List<Label> noFiles = attributes(pkg.getRule("no")).get("srcs", BuildType.LABEL_LIST); - assertThat( - Lists.newArrayList( - Label.create("fruit", "data/apple"), Label.create("fruit", "data/pear"))) - .containsExactlyElementsIn(yesFiles); - - assertThat( - Lists.newArrayList( - Label.create("fruit", "data/apple"), - Label.create("fruit", "data/pear"), - Label.create("fruit", "data/berry"))) - .containsExactlyElementsIn(noFiles); + assertThat(yesFiles).containsExactly( + Label.parseAbsolute("@//fruit:data/apple"), + Label.parseAbsolute("@//fruit:data/pear")); + + assertThat(noFiles).containsExactly( + Label.parseAbsolute("@//fruit:data/apple"), + Label.parseAbsolute("@//fruit:data/pear"), + Label.parseAbsolute("@//fruit:data/berry")); } // TODO(bazel-team): This is really a test for GlobCache. diff --git a/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java b/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java index 99390a6739..93ca76a9b3 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/RuleClassTest.java @@ -206,7 +206,7 @@ public class RuleClassTest extends PackageLoadingTestCase { private static final int TEST_RULE_DEFINED_AT_LINE = 42; - private static final String TEST_RULE_LABEL = "//" + TEST_PACKAGE_NAME + ":" + TEST_RULE_NAME; + private static final String TEST_RULE_LABEL = "@//" + TEST_PACKAGE_NAME + ":" + TEST_RULE_NAME; private Path testBuildfilePath; private Location testRuleLocation; @@ -219,7 +219,7 @@ public class RuleClassTest extends PackageLoadingTestCase { } private Package.Builder createDummyPackageBuilder() { - return new Builder(PackageIdentifier.createInDefaultRepo(TEST_PACKAGE_NAME), "TESTING") + return new Builder(PackageIdentifier.createInMainRepo(TEST_PACKAGE_NAME), "TESTING") .setFilename(testBuildfilePath) .setMakeEnv(new MakeEnvironment.Builder()); } @@ -309,16 +309,14 @@ public class RuleClassTest extends PackageLoadingTestCase { assertEquals(TEST_RULE_DEFINED_AT_LINE, event.getLocation().getStartLineAndColumn().getLine()); assertEquals(testBuildfilePath.asFragment(), event.getLocation().getPath()); - assertEquals(TEST_RULE_LABEL + ": " + expectedMessages.next(), event.getMessage()); + assertEquals(TEST_RULE_LABEL.toString().substring(1) + + ": " + expectedMessages.next(), event.getMessage()); } // Test basic rule properties: - assertEquals("ruleA", - rule.getRuleClass()); - assertEquals(TEST_RULE_NAME, - rule.getName()); - assertEquals(TEST_RULE_LABEL, - rule.getLabel().toString()); + assertEquals("ruleA", rule.getRuleClass()); + assertEquals(TEST_RULE_NAME, rule.getName()); + assertEquals(TEST_RULE_LABEL.substring(1), rule.getLabel().toString()); // Test attribute access: AttributeMap attributes = RawAttributeMapper.of(rule); diff --git a/src/test/java/com/google/devtools/build/lib/packages/RuleFactoryTest.java b/src/test/java/com/google/devtools/build/lib/packages/RuleFactoryTest.java index 50a8b4b464..6c10d46603 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/RuleFactoryTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/RuleFactoryTest.java @@ -52,7 +52,7 @@ public class RuleFactoryTest extends PackageLoadingTestCase { public void testCreateRule() throws Exception { Path myPkgPath = scratch.resolve("/foo/workspace/mypkg/BUILD"); Package.Builder pkgBuilder = - new Package.Builder(PackageIdentifier.createInDefaultRepo("mypkg"), "TESTING") + new Package.Builder(PackageIdentifier.createInMainRepo("mypkg"), "TESTING") .setFilename(myPkgPath) .setMakeEnv(new MakeEnvironment.Builder()); @@ -135,7 +135,7 @@ public class RuleFactoryTest extends PackageLoadingTestCase { public void testWorkspaceRuleFailsInBuildFile() throws Exception { Path myPkgPath = scratch.resolve("/foo/workspace/mypkg/BUILD"); Package.Builder pkgBuilder = - new Package.Builder(PackageIdentifier.createInDefaultRepo("mypkg"), "TESTING") + new Package.Builder(PackageIdentifier.createInMainRepo("mypkg"), "TESTING") .setFilename(myPkgPath) .setMakeEnv(new MakeEnvironment.Builder()); @@ -201,7 +201,7 @@ public class RuleFactoryTest extends PackageLoadingTestCase { public void testOutputFileNotEqualDot() throws Exception { Path myPkgPath = scratch.resolve("/foo"); Package.Builder pkgBuilder = - new Package.Builder(PackageIdentifier.createInDefaultRepo("mypkg"), "TESTING") + new Package.Builder(PackageIdentifier.createInMainRepo("mypkg"), "TESTING") .setFilename(myPkgPath) .setMakeEnv(new MakeEnvironment.Builder()); @@ -232,7 +232,7 @@ public class RuleFactoryTest extends PackageLoadingTestCase { public void testTestRules() throws Exception { Path myPkgPath = scratch.resolve("/foo/workspace/mypkg/BUILD"); Package pkg = - new Package.Builder(PackageIdentifier.createInDefaultRepo("mypkg"), "TESTING") + new Package.Builder(PackageIdentifier.createInMainRepo("mypkg"), "TESTING") .setFilename(myPkgPath) .setMakeEnv(new MakeEnvironment.Builder()) .build(); diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java b/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java index ef3b2681d7..d3c99a43fe 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java +++ b/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java @@ -71,7 +71,7 @@ public class PackageFactoryApparatus { * Parses and evaluates {@code buildFile} and returns the resulting {@link Package} instance. */ public Package createPackage(String packageName, Path buildFile) throws Exception { - return createPackage(PackageIdentifier.createInDefaultRepo(packageName), buildFile, + return createPackage(PackageIdentifier.createInMainRepo(packageName), buildFile, eventHandler); } @@ -107,7 +107,7 @@ public class PackageFactoryApparatus { */ public Pair<Package, GlobCache> evalAndReturnGlobCache(String packageName, Path buildFile, BuildFileAST buildFileAST) throws InterruptedException { - PackageIdentifier packageId = PackageIdentifier.createInDefaultRepo(packageName); + PackageIdentifier packageId = PackageIdentifier.createInMainRepo(packageName); GlobCache globCache = new GlobCache( buildFile.getParentDirectory(), diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryTestBase.java b/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryTestBase.java index 2d227187c8..800dc19b92 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryTestBase.java +++ b/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryTestBase.java @@ -289,7 +289,7 @@ public abstract class PackageFactoryTestBase { "java_library(name = 'mylib',", " srcs = 'java/A.java')"); packages.createPackage( - PackageIdentifier.createInDefaultRepo("isolated"), buildFile, eventHandler); + PackageIdentifier.createInMainRepo("isolated"), buildFile, eventHandler); parsedOK = true; } catch (Exception e) { e.printStackTrace(); 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 f22bb270b0..a7aa9b554d 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 @@ -152,7 +152,7 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase { packageCacheOptions.defaultVisibility, true, 7, ruleClassProvider.getDefaultsPackageContent(enforcedTestOptions), UUID.randomUUID()); - skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.deletedPackages)); + skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.getDeletedPackages())); } private PackageCacheOptions parsePackageCacheOptions(String... options) throws Exception { diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/CompileOneDependencyTransformerTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/CompileOneDependencyTransformerTest.java index a59221d28e..0b7092f2e5 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/CompileOneDependencyTransformerTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/CompileOneDependencyTransformerTest.java @@ -116,19 +116,19 @@ public class CompileOneDependencyTransformerTest extends PackageLoadingTestCase public void testCompileOneDep() throws Exception { writeSimpleExample(); assertThat(parseListCompileOneDep("foo/foo1.cc")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); assertThat(parseListCompileOneDep("foo/foo1.h")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); assertThat(parseListCompileOneDep("foo:foo1.cc")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); assertThat(parseListCompileOneDep("//foo:foo1.cc")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); assertThat(parseListCompileOneDepRelative("//foo:foo1.cc")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); assertThat(parseListCompileOneDepRelative(":foo1.cc")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); assertThat(parseListCompileOneDepRelative("foo1.cc")) - .containsExactlyElementsIn(labels("//foo:foo1")); + .containsExactlyElementsIn(labels("@//foo:foo1")); } /** 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 13705ec379..b5856a179f 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 @@ -109,7 +109,7 @@ public class PackageCacheTest extends FoundationTestCase { packageCacheOptions.defaultVisibility, true, 7, ruleClassProvider.getDefaultsPackageContent(), UUID.randomUUID()); - skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.deletedPackages)); + skyframeExecutor.setDeletedPackages(ImmutableSet.copyOf(packageCacheOptions.getDeletedPackages())); } private PackageCacheOptions parsePackageCacheOptions(String... options) throws Exception { @@ -135,7 +135,7 @@ public class PackageCacheTest extends FoundationTestCase { private Package getPackage(String packageName) throws NoSuchPackageException, InterruptedException { return getPackageManager().getPackage(reporter, - PackageIdentifier.createInDefaultRepo(packageName)); + PackageIdentifier.createInMainRepo(packageName)); } private Target getTarget(Label label) @@ -169,7 +169,7 @@ public class PackageCacheTest extends FoundationTestCase { assertEquals("/workspace/pkg1/BUILD", pkg1.getFilename().toString()); assertSame(pkg1, getPackageManager().getPackage(reporter, - PackageIdentifier.createInDefaultRepo("pkg1"))); + PackageIdentifier.createInMainRepo("pkg1"))); } @Test @@ -532,13 +532,13 @@ public class PackageCacheTest extends FoundationTestCase { + "If so, use the --deleted_packages=c/d option)"); assertTrue(getPackageManager().isPackage( - reporter, PackageIdentifier.createInDefaultRepo("c/d"))); + reporter, PackageIdentifier.createInMainRepo("c/d"))); setOptions("--deleted_packages=c/d"); invalidatePackages(); assertFalse(getPackageManager().isPackage( - reporter, PackageIdentifier.createInDefaultRepo("c/d"))); + reporter, PackageIdentifier.createInMainRepo("c/d"))); // c/d is no longer a subpackage--even though there's a BUILD file in the // second root: diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/PathPackageLocatorTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/PathPackageLocatorTest.java index ccdd30e614..47b696cdec 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/PathPackageLocatorTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/PathPackageLocatorTest.java @@ -167,7 +167,7 @@ public class PathPackageLocatorTest extends FoundationTestCase { private void checkFails(String packageName, String expectorError) { try { - getLocator().getPackageBuildFile(PackageIdentifier.createInDefaultRepo(packageName)); + getLocator().getPackageBuildFile(PackageIdentifier.createInMainRepo(packageName)); fail(); } catch (NoSuchPackageException e) { assertThat(e).hasMessage(expectorError); @@ -178,48 +178,48 @@ public class PathPackageLocatorTest extends FoundationTestCase { public void testGetPackageBuildFile() throws Exception { AtomicReference<? extends UnixGlob.FilesystemCalls> cache = UnixGlob.DEFAULT_SYSCALLS_REF; assertEquals(buildFile_1A, locator.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("A"))); + PackageIdentifier.createInMainRepo("A"))); assertEquals(buildFile_1A, locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("A"), cache)); + PackageIdentifier.createInMainRepo("A"), cache)); assertEquals(buildFile_1B, locator.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("B"))); + PackageIdentifier.createInMainRepo("B"))); assertEquals(buildFile_1B, locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("B"), cache)); + PackageIdentifier.createInMainRepo("B"), cache)); assertEquals(buildFile_2C, locator.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("C"))); + PackageIdentifier.createInMainRepo("C"))); assertEquals(buildFile_2C, locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("C"), cache)); + PackageIdentifier.createInMainRepo("C"), cache)); assertEquals(buildFile_2CD, locator.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("C/D"))); + PackageIdentifier.createInMainRepo("C/D"))); assertEquals(buildFile_2CD, locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("C/D"), cache)); + PackageIdentifier.createInMainRepo("C/D"), cache)); checkFails("C/E", "no such package 'C/E': BUILD file not found on package path"); assertNull(locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("C/E"), cache)); + PackageIdentifier.createInMainRepo("C/E"), cache)); assertEquals(buildFile_2F, - locator.getPackageBuildFile(PackageIdentifier.createInDefaultRepo("F"))); + locator.getPackageBuildFile(PackageIdentifier.createInMainRepo("F"))); checkFails("F/G", "no such package 'F/G': BUILD file not found on package path"); assertNull(locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("F/G"), cache)); + PackageIdentifier.createInMainRepo("F/G"), cache)); assertEquals(buildFile_2FGH, locator.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("F/G/H"))); + PackageIdentifier.createInMainRepo("F/G/H"))); assertEquals(buildFile_2FGH, locator.getPackageBuildFileNullable( - PackageIdentifier.createInDefaultRepo("F/G/H"), cache)); + PackageIdentifier.createInMainRepo("F/G/H"), cache)); checkFails("I", "no such package 'I': BUILD file not found on package path"); } @Test public void testGetPackageBuildFileWithSymlinks() throws Exception { assertEquals(buildFile_3A, locatorWithSymlinks.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("A"))); + PackageIdentifier.createInMainRepo("A"))); assertEquals(buildFile_3B, locatorWithSymlinks.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("B"))); + PackageIdentifier.createInMainRepo("B"))); assertEquals(buildFile_3CI, locatorWithSymlinks.getPackageBuildFile( - PackageIdentifier.createInDefaultRepo("C/I"))); + PackageIdentifier.createInMainRepo("C/I"))); try { - locatorWithSymlinks.getPackageBuildFile(PackageIdentifier.createInDefaultRepo("C/D")); + locatorWithSymlinks.getPackageBuildFile(PackageIdentifier.createInMainRepo("C/D")); fail(); } catch (BuildFileNotFoundException e) { assertThat(e).hasMessage("no such package 'C/D': BUILD file not found on package path"); @@ -247,7 +247,7 @@ public class PathPackageLocatorTest extends FoundationTestCase { // The package isn't found // The package is found, because we didn't drop the root: try { - locator.getPackageBuildFile(PackageIdentifier.createInDefaultRepo("X")); + locator.getPackageBuildFile(PackageIdentifier.createInMainRepo("X")); fail("Exception expected"); } catch (NoSuchPackageException e) { } diff --git a/src/test/java/com/google/devtools/build/lib/pkgcache/TargetPatternEvaluatorTest.java b/src/test/java/com/google/devtools/build/lib/pkgcache/TargetPatternEvaluatorTest.java index 068ad3faff..d2a3451b39 100644 --- a/src/test/java/com/google/devtools/build/lib/pkgcache/TargetPatternEvaluatorTest.java +++ b/src/test/java/com/google/devtools/build/lib/pkgcache/TargetPatternEvaluatorTest.java @@ -366,9 +366,9 @@ public class TargetPatternEvaluatorTest extends AbstractTargetPatternEvaluatorTe assertThat(parseList("//foo/bar" + suffix)).containsExactlyElementsIn(rulesInFooBar); assertThat(parseList("//otherrules" + suffix)).containsExactlyElementsIn(rulesInOtherrules); assertNoEvents(); - expectError("while parsing 'nosuchpkg" + suffix + "': no such package 'nosuchpkg': " + expectError("while parsing '//nosuchpkg" + suffix + "': no such package 'nosuchpkg': " + "BUILD file not found on package path", - "nosuchpkg" + suffix); + "//nosuchpkg" + suffix); expectError("while parsing '//nosuchpkg" + suffix + "': no such package 'nosuchpkg': " + "BUILD file not found on package path", "//nosuchpkg" + suffix); @@ -536,7 +536,7 @@ public class TargetPatternEvaluatorTest extends AbstractTargetPatternEvaluatorTe public void testDotDotDotDoesntMatchDeletedPackages() throws Exception { scratch.file("x/y/BUILD", "cc_library(name='y')"); scratch.file("x/z/BUILD", "cc_library(name='z')"); - setDeletedPackages(Sets.newHashSet(PackageIdentifier.createInDefaultRepo("x/y"))); + setDeletedPackages(Sets.newHashSet(PackageIdentifier.createInMainRepo("x/y"))); assertEquals(Sets.newHashSet(Label.parseAbsolute("//x/z")), parseList("x/...")); } @@ -545,7 +545,7 @@ public class TargetPatternEvaluatorTest extends AbstractTargetPatternEvaluatorTe public void testDotDotDotDoesntMatchDeletedPackagesRelative() throws Exception { scratch.file("x/y/BUILD", "cc_library(name='y')"); scratch.file("x/z/BUILD", "cc_library(name='z')"); - setDeletedPackages(Sets.newHashSet(PackageIdentifier.createInDefaultRepo("x/y"))); + setDeletedPackages(Sets.newHashSet(PackageIdentifier.createInMainRepo("x/y"))); parser.updateOffset(new PathFragment("x")); assertEquals(Sets.newHashSet(Label.parseAbsolute("//x/z")), @@ -560,7 +560,7 @@ public class TargetPatternEvaluatorTest extends AbstractTargetPatternEvaluatorTe assertEquals(Sets.newHashSet(Label.parseAbsolute("//x/y"), Label.parseAbsolute("//x/z")), parseList("x/...")); - setDeletedPackages(Sets.newHashSet(PackageIdentifier.createInDefaultRepo("x/y"))); + setDeletedPackages(Sets.newHashSet(PackageIdentifier.createInMainRepo("x/y"))); assertEquals(Sets.newHashSet(Label.parseAbsolute("//x/z")), parseList("x/...")); setDeletedPackages(ImmutableSet.<PackageIdentifier>of()); @@ -813,6 +813,10 @@ public class TargetPatternEvaluatorTest extends AbstractTargetPatternEvaluatorTe "Skipping '//missing_pkg': no such package 'missing_pkg': " + "BUILD file not found on package path", "//missing_pkg", "foo/..."); + assertKeepGoing(rulesBeneathFoo, + "Skipping '//missing_pkg': no such package 'missing_pkg': " + + "BUILD file not found on package path", + "//missing_pkg", "foo/..."); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcCommonConfiguredTargetTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcCommonConfiguredTargetTest.java index 237e2f1491..aa06687265 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcCommonConfiguredTargetTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcCommonConfiguredTargetTest.java @@ -468,7 +468,7 @@ public class CcCommonConfiguredTargetTest extends BuildViewTestCase { " deps = [':lib1'],", " alwayslink=1)"); reporter.removeHandler(failFastHandler); - getPackageManager().getPackage(reporter, PackageIdentifier.createInDefaultRepo("cc/common")); + getPackageManager().getPackage(reporter, PackageIdentifier.createInMainRepo("cc/common")); assertContainsEvent( "//cc/common:testlib: no such attribute 'alwayslink'" + " in 'cc_test' rule"); } 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 d6961af549..14957b9b58 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 @@ -992,8 +992,10 @@ public class CrosstoolConfigurationLoaderTest extends AnalysisTestCase { + " dynamic_runtimes_filegroup: \"dynamic-group\"" + "}\n"); - final PackageIdentifier ctTop = MockCcSupport.getMockCrosstoolsTop(); - + PackageIdentifier ctTop = MockCcSupport.getMockCrosstoolsTop(); + if (ctTop.getRepository().isDefault()) { + ctTop = PackageIdentifier.createInMainRepo(ctTop.getPackageFragment()); + } CppConfiguration defaultLibs = create(loader, "--cpu=piii"); assertEquals( Label.create(ctTop, "static-runtime-libs-piii"), defaultLibs.getStaticRuntimeLibsLabel()); diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java index 3d7f77e740..0476e56752 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupFunctionTest.java @@ -82,7 +82,7 @@ public class ContainingPackageLookupFunctionTest extends FoundationTestCase { private ContainingPackageLookupValue lookupContainingPackage(String packageName) throws InterruptedException { SkyKey key = - ContainingPackageLookupValue.key(PackageIdentifier.createInDefaultRepo(packageName)); + ContainingPackageLookupValue.key(PackageIdentifier.createInMainRepo(packageName)); return driver .<ContainingPackageLookupValue>evaluate( ImmutableList.of(key), @@ -103,7 +103,7 @@ public class ContainingPackageLookupFunctionTest extends FoundationTestCase { scratch.file("a/BUILD"); ContainingPackageLookupValue value = lookupContainingPackage("a/b"); assertTrue(value.hasContainingPackage()); - assertEquals(PackageIdentifier.createInDefaultRepo("a"), value.getContainingPackageName()); + assertEquals(PackageIdentifier.createInMainRepo("a"), value.getContainingPackageName()); assertEquals(rootDirectory, value.getContainingPackageRoot()); } @@ -112,7 +112,7 @@ public class ContainingPackageLookupFunctionTest extends FoundationTestCase { scratch.file("a/b/BUILD"); ContainingPackageLookupValue value = lookupContainingPackage("a/b"); assertTrue(value.hasContainingPackage()); - assertEquals(PackageIdentifier.createInDefaultRepo("a/b"), value.getContainingPackageName()); + assertEquals(PackageIdentifier.createInMainRepo("a/b"), value.getContainingPackageName()); assertEquals(rootDirectory, value.getContainingPackageRoot()); } @@ -122,11 +122,11 @@ public class ContainingPackageLookupFunctionTest extends FoundationTestCase { ContainingPackageLookupValue valueA2 = ContainingPackageLookupValue.NONE; ContainingPackageLookupValue valueB1 = ContainingPackageLookupValue.withContainingPackage( - PackageIdentifier.createInDefaultRepo("b"), rootDirectory); + PackageIdentifier.createInMainRepo("b"), rootDirectory); ContainingPackageLookupValue valueB2 = ContainingPackageLookupValue.withContainingPackage( - PackageIdentifier.createInDefaultRepo("b"), rootDirectory); - PackageIdentifier cFrag = PackageIdentifier.createInDefaultRepo("c"); + PackageIdentifier.createInMainRepo("b"), rootDirectory); + PackageIdentifier cFrag = PackageIdentifier.createInMainRepo("c"); ContainingPackageLookupValue valueC1 = ContainingPackageLookupValue.withContainingPackage(cFrag, rootDirectory); ContainingPackageLookupValue valueC2 = diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/GlobFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/GlobFunctionTest.java index e553ef48e7..8829e771e5 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/GlobFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/GlobFunctionTest.java @@ -96,7 +96,7 @@ public abstract class GlobFunctionTest { private AtomicReference<PathPackageLocator> pkgLocator; private TimestampGranularityMonitor tsgm; - private static final PackageIdentifier PKG_ID = PackageIdentifier.createInDefaultRepo("pkg"); + private static final PackageIdentifier PKG_ID = PackageIdentifier.createInMainRepo("pkg"); @Before public final void setUp() throws Exception { diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PackageFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PackageFunctionTest.java index c985256e34..9178fd5de4 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/PackageFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/PackageFunctionTest.java @@ -110,7 +110,7 @@ public class PackageFunctionTest extends BuildViewTestCase { scratch.file("foo/BUILD"); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("pkg")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//pkg")); result = SkyframeExecutorTestUtils.evaluate(getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -136,7 +136,7 @@ public class PackageFunctionTest extends BuildViewTestCase { ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); - SkyKey pkgLookupKey = PackageLookupValue.key(PackageIdentifier.parse("foo")); + SkyKey pkgLookupKey = PackageLookupValue.key(PackageIdentifier.parse("@//foo")); EvaluationResult<PackageLookupValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), pkgLookupKey, /*keepGoing=*/false, reporter); assertFalse(result.hasError()); @@ -144,7 +144,7 @@ public class PackageFunctionTest extends BuildViewTestCase { scratch.file("/root1/foo/BUILD"); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("pkg")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//pkg")); result = SkyframeExecutorTestUtils.evaluate(getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -209,7 +209,7 @@ public class PackageFunctionTest extends BuildViewTestCase { SkyValue fooDirValue = FileStateValue.create(pkgRootedPath, getSkyframeExecutor().getTimestampGranularityMonitorForTesting()); differencer.inject(ImmutableMap.of(FileStateValue.key(pkgRootedPath), fooDirValue)); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); String expectedMessage = "/workspace/foo/BUILD exists but its parent path /workspace/foo isn't " + "an existing directory"; EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( @@ -248,7 +248,7 @@ public class PackageFunctionTest extends BuildViewTestCase { barDirFileValue, DirectoryListingStateValue.create(ImmutableList.of( new Dirent("baz", Dirent.Type.DIRECTORY)))); differencer.inject(ImmutableMap.of(DirectoryListingValue.key(barDirRootedPath), barDirListing)); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); String expectedMessage = "Some filesystem operations implied /workspace/foo/bar/baz/baz.sh was " + "a regular file with size of 0 and mtime of 0 and nodeId of " + bazFileNodeId + " and " + "mtime of 0 but others made us think it was a nonexistent path"; @@ -272,7 +272,7 @@ public class PackageFunctionTest extends BuildViewTestCase { scratch.file("foo/bar/baz.sh"); fs.scheduleMakeUnreadableAfterReaddir(barDir); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); String expectedMessage = "Encountered error 'Directory is not readable'"; EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); @@ -298,7 +298,7 @@ public class PackageFunctionTest extends BuildViewTestCase { ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); validPackage(skyKey); } @@ -320,7 +320,7 @@ public class PackageFunctionTest extends BuildViewTestCase { ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); PackageValue value = validPackage(skyKey); assertThat(value.getPackage().getSubincludeLabels()).containsExactly( Label.parseAbsolute("//bar:a"), Label.parseAbsolute("//baz:b")); @@ -336,6 +336,32 @@ public class PackageFunctionTest extends BuildViewTestCase { } @Test + public void testIncludeInMainAndDefaultRepository() throws Exception { + scratch.file("foo/BUILD", + "subinclude('//baz:a')"); + scratch.file("bar/BUILD", + "subinclude('@//baz:a')"); + scratch.file("baz/BUILD", + "exports_files(['a'])"); + scratch.file("baz/a"); + + getSkyframeExecutor().preparePackageLoading( + new PathPackageLocator(outputBase, ImmutableList.of(rootDirectory)), + ConstantRuleVisibility.PUBLIC, true, + 7, "", UUID.randomUUID()); + + SkyKey fooKey = PackageValue.key(PackageIdentifier.parse("@//foo")); + PackageValue fooValue = validPackage(fooKey); + assertThat(fooValue.getPackage().getSubincludeLabels()).containsExactly( + Label.parseAbsolute("//baz:a")); + + SkyKey barKey = PackageValue.key(PackageIdentifier.parse("@//bar")); + PackageValue barValue = validPackage(barKey); + assertThat(barValue.getPackage().getSubincludeLabels()).containsExactly( + Label.parseAbsolute("@//baz:a")); + } + + @Test public void testTransitiveSkylarkDepsStoredInPackage() throws Exception { scratch.file("foo/BUILD", "load('/bar/ext', 'a')"); @@ -355,7 +381,7 @@ public class PackageFunctionTest extends BuildViewTestCase { ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); PackageValue value = validPackage(skyKey); assertThat(value.getPackage().getSkylarkFileDependencies()).containsExactly( Label.parseAbsolute("//bar:ext.bzl"), Label.parseAbsolute("//baz:ext.bzl")); @@ -381,7 +407,7 @@ public class PackageFunctionTest extends BuildViewTestCase { " cmd = 'echo hello >@')"); invalidatePackages(); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("test/skylark")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//test/skylark")); EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -404,7 +430,7 @@ public class PackageFunctionTest extends BuildViewTestCase { "subinclude('//foo:a')"); invalidatePackages(); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("test/skylark")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//test/skylark")); EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -429,7 +455,7 @@ public class PackageFunctionTest extends BuildViewTestCase { " cmd = 'echo hello >@')"); invalidatePackages(); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("test/skylark")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//test/skylark")); EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -452,7 +478,7 @@ public class PackageFunctionTest extends BuildViewTestCase { " cmd = 'echo hello >@')"); invalidatePackages(); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("test/skylark")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//test/skylark")); EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -471,7 +497,7 @@ public class PackageFunctionTest extends BuildViewTestCase { "sh_library(name = 'foo', srcs = ['bar/baz.sh'])"); Path barBuildFile = scratch.file("foo/bar/BUILD"); fs.stubStatError(barBuildFile, new IOException("nope")); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), skyKey, /*keepGoing=*/false, reporter); assertTrue(result.hasError()); @@ -482,7 +508,7 @@ public class PackageFunctionTest extends BuildViewTestCase { public void testLoadRelativePath() throws Exception { scratch.file("pkg/BUILD", "load('ext', 'a')"); scratch.file("pkg/ext.bzl", "a = 1"); - validPackage(PackageValue.key(PackageIdentifier.parse("pkg"))); + validPackage(PackageValue.key(PackageIdentifier.parse("@//pkg"))); } @Test @@ -491,13 +517,13 @@ public class PackageFunctionTest extends BuildViewTestCase { scratch.file("pkg2/BUILD", "load('/pkg1/ext', 'a')"); scratch.file("pkg1/ext.bzl", "a = 1"); - validPackage(PackageValue.key(PackageIdentifier.parse("pkg2"))); + validPackage(PackageValue.key(PackageIdentifier.parse("@//pkg2"))); } @Test public void testBadWorkspaceFile() throws Exception { Path workspacePath = scratch.overwriteFile("WORKSPACE", "junk"); - SkyKey skyKey = PackageValue.key(PackageIdentifier.createInDefaultRepo("external")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.createInMainRepo("external")); getSkyframeExecutor() .invalidate( Predicates.equalTo( @@ -528,7 +554,7 @@ public class PackageFunctionTest extends BuildViewTestCase { ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); PackageValue value = validPackage(skyKey); assertFalse(value.getPackage().containsErrors()); assertThat(value.getPackage().getTarget("existing.txt").getName()).isEqualTo("existing.txt"); @@ -584,7 +610,7 @@ public class PackageFunctionTest extends BuildViewTestCase { ConstantRuleVisibility.PUBLIC, true, 7, "", UUID.randomUUID()); - SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("foo")); + SkyKey skyKey = PackageValue.key(PackageIdentifier.parse("@//foo")); PackageValue value = validPackage(skyKey); assertFalse(value.getPackage().containsErrors()); assertThat(value.getPackage().getTarget("bar-matched").getName()).isEqualTo("bar-matched"); 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 39b038fe63..3452728420 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 @@ -108,7 +108,7 @@ public class PackageLookupFunctionTest extends FoundationTestCase { } private PackageLookupValue lookupPackage(String packageName) throws InterruptedException { - return lookupPackage(PackageIdentifier.createInDefaultRepo(packageName)); + return lookupPackage(PackageIdentifier.createInMainRepo(packageName)); } private PackageLookupValue lookupPackage(PackageIdentifier packageId) @@ -141,7 +141,7 @@ public class PackageLookupFunctionTest extends FoundationTestCase { public void testDeletedPackage() throws Exception { scratch.file("parentpackage/deletedpackage/BUILD"); deletedPackages.set(ImmutableSet.of( - PackageIdentifier.createInDefaultRepo("parentpackage/deletedpackage"))); + PackageIdentifier.createInMainRepo("parentpackage/deletedpackage"))); PackageLookupValue packageLookupValue = lookupPackage("parentpackage/deletedpackage"); assertFalse(packageLookupValue.packageExists()); assertEquals(ErrorReason.DELETED_PACKAGE, packageLookupValue.getErrorReason()); @@ -215,7 +215,8 @@ public class PackageLookupFunctionTest extends FoundationTestCase { @Test public void testWorkspaceLookup() throws Exception { scratch.overwriteFile("WORKSPACE"); - PackageLookupValue packageLookupValue = lookupPackage("external"); + PackageLookupValue packageLookupValue = lookupPackage( + PackageIdentifier.createInMainRepo("external")); assertTrue(packageLookupValue.packageExists()); assertEquals(rootDirectory, packageLookupValue.getRoot()); } diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionSmartNegationTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionSmartNegationTest.java index fa3da90b28..278567a09d 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionSmartNegationTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionSmartNegationTest.java @@ -47,7 +47,7 @@ public class PrepareDepsOfPatternsFunctionSmartNegationTest extends BuildViewTes @Test public void testRecursiveEvaluationFailsOnBadBuildFile() throws Exception { - // Given a well-formed package "//foo" and a malformed package "//foo/foo", + // Given a well-formed package "@//foo" and a malformed package "@//foo/foo", createFooAndFooFoo(); // Given a target pattern sequence consisting of a recursive pattern for "//foo/...", @@ -59,12 +59,12 @@ public class PrepareDepsOfPatternsFunctionSmartNegationTest extends BuildViewTes getGraphFromPatternsEvaluation( patternSequence, /*successExpected=*/ true, /*keepGoing=*/ true); - // Then the graph contains package values for "//foo" and "//foo/foo", - assertTrue(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("foo")))); - assertTrue(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("foo/foo")))); + // Then the graph contains package values for "@//foo" and "@//foo/foo", + assertTrue(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("@//foo")))); + assertTrue(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("@//foo/foo")))); - // But the graph does not contain a value for the target "//foo/foo:foofoo". - assertFalse(walkableGraph.exists(getKeyForLabel(Label.create("foo/foo", "foofoo")))); + // But the graph does not contain a value for the target "@//foo/foo:foofoo". + assertFalse(walkableGraph.exists(getKeyForLabel(Label.create("@//foo/foo", "foofoo")))); } @Test @@ -103,14 +103,14 @@ public class PrepareDepsOfPatternsFunctionSmartNegationTest extends BuildViewTes getGraphFromPatternsEvaluation( patternSequence, /*successExpected=*/ true, /*keepGoing=*/ true); - // Then the graph contains a package value for "//foo", - assertTrue(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("foo")))); + // Then the graph contains a package value for "@//foo", + assertTrue(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("@//foo")))); - // But no package value for "//foo/foo", - assertFalse(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("foo/foo")))); + // But no package value for "@//foo/foo", + assertFalse(walkableGraph.exists(PackageValue.key(PackageIdentifier.parse("@//foo/foo")))); - // And the graph does not contain a value for the target "//foo/foo:foofoo". - Label label = Label.create("foo/foo", "foofoo"); + // And the graph does not contain a value for the target "@//foo/foo:foofoo". + Label label = Label.create("@//foo/foo", "foofoo"); assertFalse(walkableGraph.exists(getKeyForLabel(label))); } diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionTest.java index 1d9022022f..a21c6f5826 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfPatternsFunctionTest.java @@ -59,11 +59,11 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { // When PrepareDepsOfPatternsFunction successfully completes evaluation, WalkableGraph walkableGraph = getGraphFromPatternsEvaluation(patternSequence); - // Then the graph contains a value for the target "//foo:foo", - assertValidValue(walkableGraph, getKeyForLabel(Label.create("foo", "foo"))); + // Then the graph contains a value for the target "@//foo:foo", + assertValidValue(walkableGraph, getKeyForLabel(Label.create("@//foo", "foo"))); - // And the graph does not contain a value for the target "//foo:foo2". - assertFalse(walkableGraph.exists(getKeyForLabel(Label.create("foo", "foo2")))); + // And the graph does not contain a value for the target "@//foo:foo2". + assertFalse(walkableGraph.exists(getKeyForLabel(Label.create("@//foo", "foo2")))); } @Test @@ -79,12 +79,12 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { WalkableGraph walkableGraph = getGraphFromPatternsEvaluation(patternSequence); // Then the graph contains an entry for ":foo"'s dependency, ":foo2". - assertValidValue(walkableGraph, getKeyForLabel(Label.create("foo", "foo2"))); + assertValidValue(walkableGraph, getKeyForLabel(Label.create("@//foo", "foo2"))); } @Test public void testFunctionExpandsTargetPatterns() throws Exception { - // Given a package "//foo" with independent target rules ":foo" and ":foo2", + // Given a package "@//foo" with independent target rules ":foo" and ":foo2", createFooAndFoo2(/*dependent=*/ false); // Given a target pattern sequence consisting of a pattern for "//foo:*", @@ -94,8 +94,8 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { WalkableGraph walkableGraph = getGraphFromPatternsEvaluation(patternSequence); // Then the graph contains an entry for ":foo" and ":foo2". - assertValidValue(walkableGraph, getKeyForLabel(Label.create("foo", "foo"))); - assertValidValue(walkableGraph, getKeyForLabel(Label.create("foo", "foo2"))); + assertValidValue(walkableGraph, getKeyForLabel(Label.create("@//foo", "foo"))); + assertValidValue(walkableGraph, getKeyForLabel(Label.create("@//foo", "foo2"))); } @Test @@ -108,7 +108,7 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { WalkableGraph walkableGraph = getGraphFromPatternsEvaluation(patternSequence); // Then the graph does not contain an entry for ":foo", - assertFalse(walkableGraph.exists(getKeyForLabel(Label.create("foo", "foo")))); + assertFalse(walkableGraph.exists(getKeyForLabel(Label.create("@//foo", "foo")))); } @Test @@ -126,11 +126,11 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { // Then the graph contains an entry for ":foo", assertValidValue( walkableGraph, - getKeyForLabel(Label.create("foo", "foo")), + getKeyForLabel(Label.create("@//foo", "foo")), /*expectTransitiveException=*/ true); // And an entry with a NoSuchPackageException for "//bar:bar", - Exception e = assertException(walkableGraph, getKeyForLabel(Label.create("bar", "bar"))); + Exception e = assertException(walkableGraph, getKeyForLabel(Label.create("@//bar", "bar"))); assertThat(e).isInstanceOf(NoSuchPackageException.class); } @@ -149,11 +149,11 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { // Then the graph contains an entry for ":foo" which has both a value and an exception, assertValidValue( walkableGraph, - getKeyForLabel(Label.create("foo", "foo")), + getKeyForLabel(Label.create("@//foo", "foo")), /*expectTransitiveException=*/ true); // And an entry with a NoSuchTargetException for "//bar:bar", - Exception e = assertException(walkableGraph, getKeyForLabel(Label.create("bar", "bar"))); + Exception e = assertException(walkableGraph, getKeyForLabel(Label.create("@//bar", "bar"))); assertThat(e).isInstanceOf(NoSuchTargetException.class); } @@ -189,8 +189,8 @@ public class PrepareDepsOfPatternsFunctionTest extends BuildViewTestCase { // Then it skips evaluation of the malformed target pattern, but logs about it, assertContainsEvent("Skipping '" + bogusPattern + "': "); - // And then the graph contains a value for the legit target pattern's target "//foo:foo". - assertTrue(walkableGraph.exists(getKeyForLabel(Label.create("foo", "foo")))); + // And then the graph contains a value for the legit target pattern's target "@//foo:foo". + assertTrue(walkableGraph.exists(getKeyForLabel(Label.create("@//foo", "foo")))); } // Helpers: diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryFunctionTest.java index 4915f3ff9f..207465cda8 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/PrepareDepsOfTargetsUnderDirectoryFunctionTest.java @@ -59,7 +59,7 @@ public class PrepareDepsOfTargetsUnderDirectoryFunctionTest extends BuildViewTes Path root, PathFragment rootRelativePath, ImmutableSet<PathFragment> excludedPaths) { RootedPath rootedPath = RootedPath.toRootedPath(root, rootRelativePath); return CollectPackagesUnderDirectoryValue.key( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, rootedPath, excludedPaths); + PackageIdentifier.MAIN_REPOSITORY_NAME, rootedPath, excludedPaths); } private SkyKey createPrepDepsKey(Path root, PathFragment rootRelativePath) { @@ -70,14 +70,14 @@ public class PrepareDepsOfTargetsUnderDirectoryFunctionTest extends BuildViewTes ImmutableSet<PathFragment> excludedPaths) { RootedPath rootedPath = RootedPath.toRootedPath(root, rootRelativePath); return PrepareDepsOfTargetsUnderDirectoryValue.key( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, rootedPath, excludedPaths); + PackageIdentifier.MAIN_REPOSITORY_NAME, rootedPath, excludedPaths); } private SkyKey createPrepDepsKey(Path root, PathFragment rootRelativePath, ImmutableSet<PathFragment> excludedPaths, FilteringPolicy filteringPolicy) { RootedPath rootedPath = RootedPath.toRootedPath(root, rootRelativePath); return PrepareDepsOfTargetsUnderDirectoryValue.key( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, rootedPath, excludedPaths, filteringPolicy); + PackageIdentifier.MAIN_REPOSITORY_NAME, rootedPath, excludedPaths, filteringPolicy); } private EvaluationResult<?> getEvaluationResult(SkyKey... keys) throws InterruptedException { @@ -102,14 +102,14 @@ public class PrepareDepsOfTargetsUnderDirectoryFunctionTest extends BuildViewTes EvaluationResult<?> evaluationResult = getEvaluationResult(key); WalkableGraph graph = Preconditions.checkNotNull(evaluationResult.getWalkableGraph()); - // Then the TransitiveTraversalValue for "a:a" is evaluated, - SkyKey aaKey = TransitiveTraversalValue.key(Label.create("a", "a")); + // Then the TransitiveTraversalValue for "@//a:a" is evaluated, + SkyKey aaKey = TransitiveTraversalValue.key(Label.create("@//a", "a")); assertThat(graph.exists(aaKey)).isTrue(); - // And that TransitiveTraversalValue depends on "b:b.txt". + // And that TransitiveTraversalValue depends on "@//b:b.txt". Iterable<SkyKey> depsOfAa = Iterables.getOnlyElement(graph.getDirectDeps(ImmutableList.of(aaKey)).values()); - SkyKey bTxtKey = TransitiveTraversalValue.key(Label.create("b", "b.txt")); + SkyKey bTxtKey = TransitiveTraversalValue.key(Label.create("@//b", "b.txt")); assertThat(depsOfAa).contains(bTxtKey); // And the TransitiveTraversalValue for "b:b.txt" is evaluated. @@ -128,12 +128,12 @@ public class PrepareDepsOfTargetsUnderDirectoryFunctionTest extends BuildViewTes EvaluationResult<?> evaluationResult = getEvaluationResult(key); WalkableGraph graph = Preconditions.checkNotNull(evaluationResult.getWalkableGraph()); - // Then the TransitiveTraversalValue for "a:a" is not evaluated, - SkyKey aaKey = TransitiveTraversalValue.key(Label.create("a", "a")); + // Then the TransitiveTraversalValue for "@//a:a" is not evaluated, + SkyKey aaKey = TransitiveTraversalValue.key(Label.create("@//a", "a")); assertThat(graph.exists(aaKey)).isFalse(); - // But the TransitiveTraversalValue for "a:aTest" is. - SkyKey aaTestKey = TransitiveTraversalValue.key(Label.create("a", "aTest")); + // But the TransitiveTraversalValue for "@//a:aTest" is. + SkyKey aaTestKey = TransitiveTraversalValue.key(Label.create("@//a", "aTest")); assertThat(graph.exists(aaTestKey)).isTrue(); } diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunctionTest.java index 4b2e1abd45..5a16bc386f 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunctionTest.java @@ -60,7 +60,7 @@ public class RecursivePkgFunctionTest extends BuildViewTestCase { Path root, PathFragment rootRelativePath, ImmutableSet<PathFragment> excludedPaths) { RootedPath rootedPath = RootedPath.toRootedPath(root, rootRelativePath); return RecursivePkgValue.key( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, rootedPath, excludedPaths); + PackageIdentifier.MAIN_REPOSITORY_NAME, rootedPath, excludedPaths); } private RecursivePkgValue buildRecursivePkgValue(Path root, PathFragment rootRelativePath) diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java index 2b264e32ff..6ee4ac0b4d 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java @@ -44,7 +44,7 @@ public class RecursivePkgKeyTest extends BuildViewTestCase { PathFragment rootRelativePath, ImmutableSet<PathFragment> excludedPaths) { try { buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, rootRelativePath, excludedPaths); + PackageIdentifier.MAIN_REPOSITORY_NAME, rootRelativePath, excludedPaths); fail(); } catch (IllegalArgumentException expected) { } @@ -53,29 +53,29 @@ public class RecursivePkgKeyTest extends BuildViewTestCase { @Test public void testValidRecursivePkgKeys() throws Exception { buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, + PackageIdentifier.MAIN_REPOSITORY_NAME, new PathFragment(""), ImmutableSet.<PathFragment>of()); buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, + PackageIdentifier.MAIN_REPOSITORY_NAME, new PathFragment(""), ImmutableSet.of(new PathFragment("a"))); buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, + PackageIdentifier.MAIN_REPOSITORY_NAME, new PathFragment("a"), ImmutableSet.<PathFragment>of()); buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, + PackageIdentifier.MAIN_REPOSITORY_NAME, new PathFragment("a"), ImmutableSet.of(new PathFragment("a/b"))); buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, + PackageIdentifier.MAIN_REPOSITORY_NAME, new PathFragment("a/b"), ImmutableSet.<PathFragment>of()); buildRecursivePkgKey( - PackageIdentifier.DEFAULT_REPOSITORY_NAME, + PackageIdentifier.MAIN_REPOSITORY_NAME, new PathFragment("a/b"), ImmutableSet.of(new PathFragment("a/b/c"))); } diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java b/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java index 606e140fa6..4cdc8be6f0 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/SkylarkFileContentHashTests.java @@ -162,7 +162,7 @@ public class SkylarkFileContentHashTests extends BuildViewTestCase { 7, "", UUID.randomUUID()); - SkyKey pkgLookupKey = PackageValue.key(PackageIdentifier.parse(pkg)); + SkyKey pkgLookupKey = PackageValue.key(PackageIdentifier.parse("@//" + pkg)); EvaluationResult<PackageValue> result = SkyframeExecutorTestUtils.evaluate( getSkyframeExecutor(), pkgLookupKey, /*keepGoing=*/ false, reporter); diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/TargetMarkerFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/TargetMarkerFunctionTest.java index 1605916c80..d4dda9baf3 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/TargetMarkerFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/TargetMarkerFunctionTest.java @@ -109,7 +109,7 @@ public class TargetMarkerFunctionTest extends BuildViewTestCase { String labelName = "//no/such/package:target/withslash"; BuildFileNotFoundException exn = (BuildFileNotFoundException) getErrorFromTargetValue(labelName); - assertEquals(PackageIdentifier.createInDefaultRepo("no/such/package"), exn.getPackageId()); + assertEquals(PackageIdentifier.createInMainRepo("no/such/package"), exn.getPackageId()); String expectedMessage = "no such package 'no/such/package': BUILD file not found on " + "package path for 'no/such/package'"; @@ -123,11 +123,10 @@ public class TargetMarkerFunctionTest extends BuildViewTestCase { "a/BUILD", "genrule(name = 'conflict1', cmd = '', srcs = [], outs = ['conflict'])", "genrule(name = 'conflict2', cmd = '', srcs = [], outs = ['conflict'])"); - String labelName = "//a:conflict1"; - NoSuchTargetException exn = (NoSuchTargetException) getErrorFromTargetValue(labelName); + NoSuchTargetException exn = (NoSuchTargetException) getErrorFromTargetValue("@//a:conflict1"); assertThat(exn.getMessage()) .contains("Target '//a:conflict1' contains an error and its package is in error"); - assertEquals(labelName, exn.getLabel().toString()); + assertEquals("//a:conflict1", exn.getLabel().toString()); assertTrue(exn.hasTarget()); } diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java index cd02b77d12..94c822b866 100644 --- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java +++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java @@ -240,7 +240,7 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase { Pair<String, Descriptor> pair = Iterables.getOnlyElement(aspect.getAttributes()); assertThat(pair.first).isEqualTo("$extra_deps"); assertThat(pair.second.getAttributeBuilder().build("$extra_deps").getDefaultValue(null)) - .isEqualTo(Label.parseAbsolute("//foo/bar:baz")); + .isEqualTo(Label.parseAbsolute("//foo/bar:baz", false)); } @Test 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 227e8422fa..c47fdbe23d 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 @@ -772,19 +772,19 @@ public class SkylarkRuleContextTest extends SkylarkTestCase { "BUILD", "filegroup(name='dep')", "load('/my_rule', 'my_rule')", "my_rule(name='r')"); invalidatePackages(); - SkylarkRuleContext context = createRuleContext("@//:r"); + SkylarkRuleContext context = createRuleContext("//:r"); Label explicitDepLabel = (Label) evalRuleContextCode(context, "ruleContext.attr.explicit_dep.label"); - assertThat(explicitDepLabel).isEqualTo(Label.parseAbsolute("@//:dep")); + assertThat(explicitDepLabel).isEqualTo(Label.parseAbsolute("//:dep")); Label implicitDepLabel = (Label) evalRuleContextCode(context, "ruleContext.attr._implicit_dep.label"); - assertThat(implicitDepLabel).isEqualTo(Label.parseAbsolute("@//:dep")); + assertThat(implicitDepLabel).isEqualTo(Label.parseAbsolute("//:dep")); Label explicitDepListLabel = (Label) evalRuleContextCode(context, "ruleContext.attr.explicit_dep_list[0].label"); - assertThat(explicitDepListLabel).isEqualTo(Label.parseAbsolute("@//:dep")); + assertThat(explicitDepListLabel).isEqualTo(Label.parseAbsolute("//:dep")); Label implicitDepListLabel = (Label) evalRuleContextCode(context, "ruleContext.attr._implicit_dep_list[0].label"); - assertThat(implicitDepListLabel).isEqualTo(Label.parseAbsolute("@//:dep")); + assertThat(implicitDepListLabel).isEqualTo(Label.parseAbsolute("//:dep")); } @Test diff --git a/src/test/java/com/google/devtools/build/lib/testutil/BlazeTestUtils.java b/src/test/java/com/google/devtools/build/lib/testutil/BlazeTestUtils.java index 1315ac4c58..6c5b83fe35 100644 --- a/src/test/java/com/google/devtools/build/lib/testutil/BlazeTestUtils.java +++ b/src/test/java/com/google/devtools/build/lib/testutil/BlazeTestUtils.java @@ -14,9 +14,14 @@ package com.google.devtools.build.lib.testutil; +import com.google.common.base.Function; import com.google.common.base.Joiner; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.Iterables; import com.google.devtools.build.lib.analysis.BlazeDirectories; import com.google.devtools.build.lib.analysis.config.BinTools; +import com.google.devtools.build.lib.cmdline.Label; +import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.util.Preconditions; import com.google.devtools.build.lib.vfs.FileSystemUtils; import com.google.devtools.build.lib.vfs.Path; @@ -25,6 +30,7 @@ import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.Collection; +import java.util.List; /** * Some static utility functions for testing Blaze code. In contrast to {@link TestUtils}, these @@ -117,4 +123,23 @@ public class BlazeTestUtils { path.setLastModifiedTime(newMtime); } while (path.getLastModifiedTime() == prevMtime); } + + public static Label convertLabel(Label label) { + try { + return label.getPackageIdentifier().getRepository().isDefault() + ? Label.create(label.getPackageIdentifier().makeAbsolute(), label.getName()) + : label; + } catch (LabelSyntaxException e) { + throw new IllegalStateException(e); + } + } + + public static List<Label> convertLabels(Iterable<Label> labels) { + return ImmutableList.copyOf(Iterables.transform(labels, new Function<Label, Label>() { + @Override + public Label apply(Label label) { + return convertLabel(label); + } + })); + } } |