diff options
author | 2017-03-29 20:12:19 +0000 | |
---|---|---|
committer | 2017-03-31 17:06:27 +0200 | |
commit | 274cb26c2b1198aa1da4871022f8e3ddf14b4e84 (patch) | |
tree | 77712673829b1232b8b4fd1c64ef27c2a82d0724 /src/test/java | |
parent | 115ea10fe907b80ea11ad7db6f50657ecc2c18cb (diff) |
BuildView#getConfiguredTargetForTesting respects null transitions.
RuleTransitionFactory#buildTransitionFor is @Nullable, but the
SkyframeExecutor expects a non-null Transition. If the factory
returns null, the SkyframeExecutor should be passed NONE, not null.
PiperOrigin-RevId: 151615724
Diffstat (limited to 'src/test/java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsWithDynamicConfigurationsTest.java | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsWithDynamicConfigurationsTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsWithDynamicConfigurationsTest.java index a587ebaf01..9612febb38 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsWithDynamicConfigurationsTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsWithDynamicConfigurationsTest.java @@ -209,6 +209,26 @@ public class ConfigurationsForTargetsWithDynamicConfigurationsTest .isEqualTo("SET BY PATCH FACTORY: Maximum Dance"); } + @Test + public void topLevelRuleTransitionFactoryCanReturnNullInTesting() throws Exception { + setRulesAvailableInTests( + new TestAspects.BaseRule(), new TestAspects.UsesRuleTransitionFactoryRule()); + useConfiguration("--test_filter=SET ON COMMAND LINE: original and best"); + scratch.file( + "a/BUILD", + "uses_rule_transition_factory(", + " name='factory',", + " sets_test_filter_to='',", + ")"); + update("@//a:factory"); + ConfiguredTarget target = getView().getConfiguredTargetForTesting( + reporter, + Label.parseAbsoluteUnchecked("@//a:factory"), + getTargetConfiguration(true)); + assertThat(target.getConfiguration().getTestFilter()) + .isEqualTo("SET ON COMMAND LINE: original and best"); + } + /** * Returns a custom {@link PatchTransition} with the given value added to * {@link BuildConfiguration.Options#testFilter}. |