diff options
author | 2015-10-21 19:16:30 +0000 | |
---|---|---|
committer | 2015-10-22 15:15:53 +0000 | |
commit | 8ff064545b5c286209c07a66eee430747a401a0e (patch) | |
tree | ef58094d7c6c0f8210dd12d825a53089b4ea3446 /src/test/java/com | |
parent | 908f4c91b4b5c1f996f1b177ab5886b1468cb6a9 (diff) |
Introduce an AspectClass: a representation of a class of aspects.
For native aspects, AspectClass is a facade for Class<AspectFactory<...>>.
--
MOS_MIGRATED_REVID=105986390
Diffstat (limited to 'src/test/java/com')
3 files changed, 51 insertions, 25 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/AspectValueTest.java b/src/test/java/com/google/devtools/build/lib/analysis/AspectValueTest.java index 47bfc540d9..15407b432e 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/AspectValueTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/AspectValueTest.java @@ -16,9 +16,11 @@ package com.google.devtools.build.lib.analysis; import com.google.common.testing.EqualsTester; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.analysis.util.AnalysisTestCase; -import com.google.devtools.build.lib.analysis.util.TestAspects; +import com.google.devtools.build.lib.analysis.util.TestAspects.AttributeAspect; +import com.google.devtools.build.lib.analysis.util.TestAspects.ExtraAttributeAspect; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.AspectParameters; +import com.google.devtools.build.lib.packages.NativeAspectClass; import com.google.devtools.build.lib.skyframe.AspectValue; import org.junit.After; @@ -58,8 +60,8 @@ public class AspectValueTest extends AnalysisTestCase { AspectParameters i2 = new AspectParameters.Builder() .addAttribute("foo", "baz") .build(); - Class<? extends ConfiguredAspectFactory> a1 = TestAspects.AttributeAspect.class; - Class<? extends ConfiguredAspectFactory> a2 = TestAspects.ExtraAttributeAspect.class; + NativeAspectClass a1 = new NativeAspectClass(AttributeAspect.class); + NativeAspectClass a2 = new NativeAspectClass(ExtraAttributeAspect.class); new EqualsTester() .addEqualityGroup(AspectValue.key(l1, c1, a1, AspectParameters.EMPTY), diff --git a/src/test/java/com/google/devtools/build/lib/analysis/DependencyResolverTest.java b/src/test/java/com/google/devtools/build/lib/analysis/DependencyResolverTest.java index dca9b87fdd..67889a8fbd 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/DependencyResolverTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/DependencyResolverTest.java @@ -30,6 +30,7 @@ import com.google.devtools.build.lib.packages.AspectDefinition; import com.google.devtools.build.lib.packages.AspectFactory; import com.google.devtools.build.lib.packages.AspectParameters; import com.google.devtools.build.lib.packages.Attribute; +import com.google.devtools.build.lib.packages.NativeAspectClass; import com.google.devtools.build.lib.packages.NoSuchThingException; import com.google.devtools.build.lib.packages.Target; import com.google.devtools.build.lib.testutil.TestRuleClassProvider; @@ -109,9 +110,10 @@ public class DependencyResolverTest extends AnalysisTestCase { private ListMultimap<Attribute, Dependency> dependentNodeMap( String targetName, Class<? extends ConfiguredAspectFactory> aspect) throws Exception { - AspectDefinition aspectDefinition = aspect == null - ? null - : AspectFactory.Util.create(aspect).getDefinition(); + AspectDefinition aspectDefinition = + aspect == null + ? null + : AspectFactory.Util.create(new NativeAspectClass(aspect)).getDefinition(); Target target = packageManager.getTarget(reporter, Label.parseAbsolute(targetName)); return dependencyResolver.dependentNodeMap( new TargetAndConfiguration(target, getTargetConfiguration()), @@ -155,7 +157,11 @@ public class DependencyResolverTest extends AnalysisTestCase { "aspect(name='a', foo=[':b'])", "aspect(name='b', foo=[])"); ListMultimap<Attribute, Dependency> map = dependentNodeMap("//a:a", null); - assertDep(map, "foo", "//a:b", new AspectWithParameters(TestAspects.SimpleAspect.class)); + assertDep( + map, + "foo", + "//a:b", + new AspectWithParameters(new NativeAspectClass(TestAspects.SimpleAspect.class))); } @Test @@ -166,7 +172,11 @@ public class DependencyResolverTest extends AnalysisTestCase { "simple(name='b', foo=[])"); ListMultimap<Attribute, Dependency> map = dependentNodeMap("//a:a", TestAspects.AttributeAspect.class); - assertDep(map, "foo", "//a:b", new AspectWithParameters(TestAspects.AttributeAspect.class)); + assertDep( + map, + "foo", + "//a:b", + new AspectWithParameters(new NativeAspectClass(TestAspects.AttributeAspect.class))); } @Test @@ -201,15 +211,18 @@ public class DependencyResolverTest extends AnalysisTestCase { BuildConfiguration host = getHostConfiguration(); BuildConfiguration target = getTargetConfiguration(); - ImmutableSet<AspectWithParameters> twoAspects = ImmutableSet.of( - new AspectWithParameters(TestAspects.SimpleAspect.class), - new AspectWithParameters(TestAspects.AttributeAspect.class)); - ImmutableSet<AspectWithParameters> inverseAspects = ImmutableSet.of( - new AspectWithParameters(TestAspects.AttributeAspect.class), - new AspectWithParameters(TestAspects.SimpleAspect.class)); - ImmutableSet<AspectWithParameters> differentAspects = ImmutableSet.of( - new AspectWithParameters(TestAspects.AttributeAspect.class), - new AspectWithParameters(TestAspects.ErrorAspect.class)); + ImmutableSet<AspectWithParameters> twoAspects = + ImmutableSet.of( + new AspectWithParameters(new NativeAspectClass(TestAspects.SimpleAspect.class)), + new AspectWithParameters(new NativeAspectClass(TestAspects.AttributeAspect.class))); + ImmutableSet<AspectWithParameters> inverseAspects = + ImmutableSet.of( + new AspectWithParameters(new NativeAspectClass(TestAspects.AttributeAspect.class)), + new AspectWithParameters(new NativeAspectClass(TestAspects.SimpleAspect.class))); + ImmutableSet<AspectWithParameters> differentAspects = + ImmutableSet.of( + new AspectWithParameters(new NativeAspectClass(TestAspects.AttributeAspect.class)), + new AspectWithParameters(new NativeAspectClass(TestAspects.ErrorAspect.class))); new EqualsTester() .addEqualityGroup( 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 1ff708ef8e..df14698d60 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 @@ -90,6 +90,7 @@ import com.google.devtools.build.lib.packages.AspectParameters; import com.google.devtools.build.lib.packages.Attribute.ConfigurationTransition; import com.google.devtools.build.lib.packages.AttributeMap; import com.google.devtools.build.lib.packages.ConstantRuleVisibility; +import com.google.devtools.build.lib.packages.NativeAspectClass; import com.google.devtools.build.lib.packages.NoSuchPackageException; import com.google.devtools.build.lib.packages.NoSuchTargetException; import com.google.devtools.build.lib.packages.OutputFile; @@ -870,11 +871,16 @@ public abstract class BuildViewTestCase extends FoundationTestCase { */ protected Artifact getBinArtifact(String packageRelativePath, ConfiguredTarget owner, Class<? extends ConfiguredAspectFactory> creatingAspectFactory) { - return getPackageRelativeDerivedArtifact(packageRelativePath, + return getPackageRelativeDerivedArtifact( + packageRelativePath, owner.getConfiguration().getBinDirectory(), - (AspectValue.AspectKey) AspectValue.key( - owner.getLabel(), owner.getConfiguration(), creatingAspectFactory, - AspectParameters.EMPTY).argument()); + (AspectValue.AspectKey) + AspectValue.key( + owner.getLabel(), + owner.getConfiguration(), + new NativeAspectClass(creatingAspectFactory), + AspectParameters.EMPTY) + .argument()); } /** @@ -930,11 +936,16 @@ public abstract class BuildViewTestCase extends FoundationTestCase { */ protected Artifact getGenfilesArtifact(String packageRelativePath, ConfiguredTarget owner, Class<? extends ConfiguredAspectFactory> creatingAspectFactory) { - return getPackageRelativeDerivedArtifact(packageRelativePath, + return getPackageRelativeDerivedArtifact( + packageRelativePath, owner.getConfiguration().getGenfilesDirectory(), - (AspectValue.AspectKey) AspectValue.key( - owner.getLabel(), owner.getConfiguration(), creatingAspectFactory, - AspectParameters.EMPTY).argument()); + (AspectValue.AspectKey) + AspectValue.key( + owner.getLabel(), + owner.getConfiguration(), + new NativeAspectClass(creatingAspectFactory), + AspectParameters.EMPTY) + .argument()); } /** |