diff options
author | cparsons <cparsons@google.com> | 2018-07-16 13:33:33 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-07-16 13:35:11 -0700 |
commit | e506858c14d9ffceedbb22988f7c65fe70df5536 (patch) | |
tree | f482330e0d82fee8646b6e6c7b86848e4a7320cd /src/test/java/com | |
parent | de3d8bf821dba97471ab4ccfc1f1b1559f0a1cac (diff) |
Add --incompatible_disable_deprecated_attr_params to disable some deprecated parameters of the skylark attr module.
RELNOTES: None.
PiperOrigin-RevId: 204797954
Diffstat (limited to 'src/test/java/com')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java | 2 | ||||
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java | 26 |
2 files changed, 28 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java b/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java index 4a8e303a50..a96d928283 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java @@ -123,6 +123,7 @@ public class SkylarkSemanticsConsistencyTest { "--incompatible_bzl_disallow_load_after_statement=" + rand.nextBoolean(), "--incompatible_depset_is_not_iterable=" + rand.nextBoolean(), "--incompatible_depset_union=" + rand.nextBoolean(), + "--incompatible_disable_deprecated_attr_params=" + rand.nextBoolean(), "--incompatible_disable_objc_provider_resources=" + rand.nextBoolean(), "--incompatible_disallow_data_transition=" + rand.nextBoolean(), "--incompatible_disallow_dict_plus=" + rand.nextBoolean(), @@ -151,6 +152,7 @@ public class SkylarkSemanticsConsistencyTest { .incompatibleBzlDisallowLoadAfterStatement(rand.nextBoolean()) .incompatibleDepsetIsNotIterable(rand.nextBoolean()) .incompatibleDepsetUnion(rand.nextBoolean()) + .incompatibleDisableDeprecatedAttrParams(rand.nextBoolean()) .incompatibleDisableObjcProviderResources(rand.nextBoolean()) .incompatibleDisallowDataTransition(rand.nextBoolean()) .incompatibleDisallowDictPlus(rand.nextBoolean()) 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 14d4de5540..5378df232e 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 @@ -199,6 +199,32 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase { } @Test + public void testDisableDeprecatedParams() throws Exception { + ev = createEvaluationTestCase( + SkylarkSemantics.DEFAULT_SEMANTICS + .toBuilder() + .incompatibleDisableDeprecatedAttrParams(true) + .build()); + ev.initialize(); + + // Verify 'single_file' deprecation. + EvalException expected = + assertThrows(EvalException.class, () -> eval("attr.label(single_file = True)")); + assertThat(expected).hasMessageThat().contains( + "'single_file' is no longer supported. use allow_single_file instead."); + Attribute attr = buildAttribute("a1", "attr.label(allow_single_file = ['.xml'])"); + assertThat(attr.isSingleArtifact()).isTrue(); + + // Verify 'non_empty' deprecation. + expected = + assertThrows(EvalException.class, () -> eval("attr.string_list(non_empty=True)")); + assertThat(expected).hasMessageThat().contains( + "'non_empty' is no longer supported. use allow_empty instead."); + attr = buildAttribute("a2", "attr.string_list(allow_empty=False)"); + assertThat(attr.isNonEmpty()).isTrue(); + } + + @Test public void testAttrAllowedSingleFileTypesWrongType() throws Exception { checkErrorContains( "allow_single_file should be a boolean or a string list", |