diff options
author | Pedro Liberal Fernandez <plf@google.com> | 2016-09-28 07:33:42 +0000 |
---|---|---|
committer | Yun Peng <pcloudy@google.com> | 2016-09-28 08:30:08 +0000 |
commit | 92f06a540fe07a424fc929a5f8ab1ebd696dd62d (patch) | |
tree | 460b0218c8c477cef168234fd440c39a83e1db5e /src/test/java/com | |
parent | bed7e30a768aeff410a5323f25df02a37f11d665 (diff) |
Skylark: Give more detailed errors when parsing the arguments
of a SkylarkCallable.
CL already reviewed in commit 5972bee6ebfa53cf165befab9fa7962e19d5f620.
Rolled back due to casting error in Java 1.7. This is fixed now:
https://github.com/bazelbuild/bazel/issues/1832
Old:
matchingMethod =
new Pair<>(
method, argumentListConversionResult.getArguments());
New:
matchingMethod =
new Pair<MethodDescriptor, List<Object>>(
method, argumentListConversionResult.getArguments());
--
MOS_MIGRATED_REVID=134503884
Diffstat (limited to 'src/test/java/com')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java | 13 |
1 files changed, 8 insertions, 5 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 81b61732d8..3b97d08e8a 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 @@ -731,12 +731,14 @@ public class SkylarkEvaluationTest extends EvaluationTest { .update("mock", new Mock()) .setUp("") .testIfExactError( - "Type Mock has no function with_params(int, bool)", "mock.with_params(1, True)"); + "Parameter 'named' has no default value (in function with_params(int, bool) of Mock).", + "mock.with_params(1, True)"); new SkylarkTest() .update("mock", new Mock()) .setUp("") .testIfExactError( - "Type Mock has no function with_params(int, bool, bool)", + "Parameter 'named' has no default value (in function with_params(int, bool, bool) " + + "of Mock).", "mock.with_params(1, True, True)"); new SkylarkTest() .update("mock", new Mock()) @@ -754,14 +756,15 @@ public class SkylarkEvaluationTest extends EvaluationTest { .update("mock", new Mock()) .setUp("") .testIfExactError( - "Type Mock has no function with_params(int, bool, bool named, bool posOrNamed, int n)", + "Too many arguments (in function with_params(int, bool, bool named, " + + "bool posOrNamed, int n) of Mock).", "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)", + "Parameter 'nonNoneable' cannot be None (in function with_params(int, bool, bool, " + + "bool named, bool optionalNamed, NoneType nonNoneable) of Mock).", "mock.with_params(1, True, True, named=True, optionalNamed=False, nonNoneable=None)"); } |