aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google
diff options
context:
space:
mode:
authorGravatar Pedro Liberal Fernandez <plf@google.com>2016-08-18 18:53:46 +0000
committerGravatar Philipp Wollermann <philwo@google.com>2016-08-19 09:52:48 +0000
commitd0c5ff278a0c4cda57871f0b2a47a3c32e0c2b79 (patch)
treea3fecc1ff2b57763d6a0a8c8e4e48b1bf085e553 /src/test/java/com/google
parent2655e6dfbd9c4b893f437b1ca1279bc8dfa14e98 (diff)
Fixes noneable annotation not being enforced in SkylarkCallable.
-- MOS_MIGRATED_REVID=130665520
Diffstat (limited to 'src/test/java/com/google')
-rw-r--r--src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java42
1 files changed, 36 insertions, 6 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
index 7061bf6311..8f0a6f0c2f 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
@@ -124,11 +124,32 @@ public class SkylarkEvaluationTest extends EvaluationTest {
defaultValue = "False",
positional = false,
named = true
- )
+ ),
+ @Param(
+ name = "nonNoneable",
+ type = Object.class,
+ defaultValue = "\"a\"",
+ positional = false,
+ named = true
+ ),
+ @Param(
+ name = "noneable",
+ type = Object.class,
+ defaultValue = "None",
+ noneable = true,
+ positional = false,
+ named = true
+ ),
}
)
public String withParams(
- Integer pos1, boolean pos2, boolean posOrNamed, boolean named, boolean optionalNamed) {
+ Integer pos1,
+ boolean pos2,
+ boolean posOrNamed,
+ boolean named,
+ boolean optionalNamed,
+ Object nonNoneable,
+ Object noneable) {
return "with_params("
+ pos1
+ ", "
@@ -139,6 +160,8 @@ public class SkylarkEvaluationTest extends EvaluationTest {
+ named
+ ", "
+ optionalNamed
+ + ", "
+ + nonNoneable.toString()
+ ")";
}
@@ -647,7 +670,7 @@ public class SkylarkEvaluationTest extends EvaluationTest {
new SkylarkTest()
.update("mock", new Mock())
.setUp("b = mock.with_params(1, True, named=True)")
- .testLookup("b", "with_params(1, true, false, true, false)");
+ .testLookup("b", "with_params(1, true, false, true, false, a)");
new SkylarkTest()
.update("mock", new Mock())
.setUp("")
@@ -662,21 +685,28 @@ public class SkylarkEvaluationTest extends EvaluationTest {
new SkylarkTest()
.update("mock", new Mock())
.setUp("b = mock.with_params(1, True, True, named=True)")
- .testLookup("b", "with_params(1, true, true, true, false)");
+ .testLookup("b", "with_params(1, true, true, true, false, a)");
new SkylarkTest()
.update("mock", new Mock())
.setUp("b = mock.with_params(1, True, named=True, posOrNamed=True)")
- .testLookup("b", "with_params(1, true, true, true, false)");
+ .testLookup("b", "with_params(1, true, true, true, false, a)");
new SkylarkTest()
.update("mock", new Mock())
.setUp("b = mock.with_params(1, True, named=True, posOrNamed=True, optionalNamed=True)")
- .testLookup("b", "with_params(1, true, true, true, true)");
+ .testLookup("b", "with_params(1, true, true, true, true, a)");
new SkylarkTest()
.update("mock", new Mock())
.setUp("")
.testIfExactError(
"Type Mock has no function with_params(int, bool, bool named, bool posOrNamed, int n)",
"mock.with_params(1, True, named=True, posOrNamed=True, n=2)");
+ new SkylarkTest()
+ .update("mock", new Mock())
+ .setUp("")
+ .testIfExactError(
+ "Type Mock has no function with_params(int, bool, bool, bool named, bool optionalNamed,"
+ + " NoneType nonNoneable)",
+ "mock.with_params(1, True, True, named=True, optionalNamed=False, nonNoneable=None)");
}
@Test