aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
diff options
context:
space:
mode:
authorGravatar brandjon <brandjon@google.com>2017-12-28 08:49:54 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-28 08:57:59 -0800
commit8bd201631e380327f5a7fb72e11bd493973913b8 (patch)
tree3fe540d9070aa5165f4af88aea7ed0f98db0faff /src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
parentd331fa7b642ac5487a3e084ad53117fc3c2cf5df (diff)
Fix test that accidentally masked an exception
Looks like the test was originally broken (to always pass) by https://github.com/bazelbuild/bazel/commit/01120026dc313ee7ad9ea95069a29252eb19173b and its roll-forward https://github.com/bazelbuild/bazel/commit/950310ff911da6c26339f4dc0b124487adc0cdbb. RELNOTES: None PiperOrigin-RevId: 180272998
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java')
-rw-r--r--src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java49
1 files changed, 18 insertions, 31 deletions
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 930ba2586c..78e713b6ae 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
@@ -15,7 +15,7 @@
package com.google.devtools.build.lib.skylark;
import static com.google.common.truth.Truth.assertThat;
-import static org.junit.Assert.fail;
+import static com.google.devtools.build.lib.testutil.MoreAsserts.expectThrows;
import com.google.common.base.Joiner;
import com.google.common.collect.ImmutableList;
@@ -99,33 +99,23 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase {
@Test
public void testCannotOverrideBuiltInAttribute() throws Exception {
ev.setFailFast(false);
- try {
- evalAndExport(
- "def impl(ctx): return", "r = rule(impl, attrs = {'tags': attr.string_list()})");
- fail("Expected error '"
- + "There is already a built-in attribute 'tags' which cannot be overridden"
- + "' but got no error");
- } catch (AssertionError e) {
- assertThat(e)
- .hasMessageThat()
- .contains("There is already a built-in attribute 'tags' which cannot be overridden");
- }
+ evalAndExport(
+ "def impl(ctx):",
+ " return",
+ "r = rule(impl, attrs = {'tags': attr.string_list()})");
+ ev.assertContainsError(
+ "There is already a built-in attribute 'tags' which cannot be overridden");
}
@Test
public void testCannotOverrideBuiltInAttributeName() throws Exception {
ev.setFailFast(false);
- try {
- evalAndExport(
- "def impl(ctx): return", "r = rule(impl, attrs = {'name': attr.string()})");
- fail("Expected error '"
- + "There is already a built-in attribute 'name' which cannot be overridden"
- + "' but got no error");
- } catch (AssertionError e) {
- assertThat(e)
- .hasMessageThat()
- .contains("There is already a built-in attribute 'name' which cannot be overridden");
- }
+ evalAndExport(
+ "def impl(ctx):",
+ " return",
+ "r = rule(impl, attrs = {'name': attr.string()})");
+ ev.assertContainsError(
+ "There is already a built-in attribute 'name' which cannot be overridden");
}
@Test
@@ -1608,14 +1598,11 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase {
"my_rule(name = 'main', exe = ':tool.sh')"
);
- try {
- createRuleContext("//third_party/foo:main");
- fail();
- } catch (AssertionError e) {
- assertThat(e)
- .hasMessageThat()
- .contains("cfg parameter is mandatory when executable=True is " + "provided.");
- }
+ AssertionError expected = expectThrows(
+ AssertionError.class,
+ () -> createRuleContext("//third_party/foo:main"));
+ assertThat(expected).hasMessageThat()
+ .contains("cfg parameter is mandatory when executable=True is provided.");
}
@Test