diff options
author | 2017-08-16 20:24:04 +0200 | |
---|---|---|
committer | 2017-08-17 09:53:53 +0200 | |
commit | 851511817f5d0e1ccc58a0a7da02970f69f70355 (patch) | |
tree | f64f5644a306f1d701b621d686853385c243db2f /src/test/java/com/google | |
parent | 137e6c8903f75dcad4447c68a58857509a1f3d66 (diff) |
Make `incompatible_disallow_toplevel_if_statement` default to true.
RELNOTES: Top-level `if` statements are now forbidden.
PiperOrigin-RevId: 165469101
Diffstat (limited to 'src/test/java/com/google')
4 files changed, 20 insertions, 103 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/MethodLibraryTest.java b/src/test/java/com/google/devtools/build/lib/syntax/MethodLibraryTest.java index 85979f438a..dd6a46af76 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/MethodLibraryTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/MethodLibraryTest.java @@ -1329,8 +1329,8 @@ public class MethodLibraryTest extends EvaluationTestCase { new SkylarkTest() .testEval( "d = {1: 'foo', 2: 'bar', 3: 'baz'}\n" - + "if len(d) != 3: fail('clear 1')\n" - + "if d.clear() != None: fail('clear 2')\n" + + "len(d) == 3 or fail('clear 1')\n" + + "d.clear() == None or fail('clear 2')\n" + "d", "{}"); } @@ -1341,12 +1341,12 @@ public class MethodLibraryTest extends EvaluationTestCase { .testIfErrorContains( "KeyError: 1", "d = {1: 'foo', 2: 'bar', 3: 'baz'}\n" - + "if len(d) != 3: fail('pop 1')\n" - + "if d.pop(2) != 'bar': fail('pop 2')\n" - + "if d.pop(3, 'quux') != 'baz': fail('pop 3a')\n" - + "if d.pop(3, 'quux') != 'quux': fail('pop 3b')\n" - + "if d.pop(1) != 'foo': fail('pop 1')\n" - + "if d != {}: fail('pop 0')\n" + + "len(d) == 3 or fail('pop 1')\n" + + "d.pop(2) == 'bar' or fail('pop 2')\n" + + "d.pop(3, 'quux') == 'baz' or fail('pop 3a')\n" + + "d.pop(3, 'quux') == 'quux' or fail('pop 3b')\n" + + "d.pop(1) == 'foo' or fail('pop 1')\n" + + "d == {} or fail('pop 0')\n" + "d.pop(1)"); } @@ -1356,11 +1356,11 @@ public class MethodLibraryTest extends EvaluationTestCase { .testIfErrorContains( "popitem(): dictionary is empty", "d = {2: 'bar', 3: 'baz', 1: 'foo'}\n" - + "if len(d) != 3: fail('popitem 0')\n" - + "if d.popitem() != (2, 'bar'): fail('popitem 2')\n" - + "if d.popitem() != (3, 'baz'): fail('popitem 3')\n" - + "if d.popitem() != (1, 'foo'): fail('popitem 1')\n" - + "if d != {}: fail('popitem 4')\n" + + "len(d) == 3 or fail('popitem 0')\n" + + "d.popitem() == (2, 'bar') or fail('popitem 2')\n" + + "d.popitem() == (3, 'baz') or fail('popitem 3')\n" + + "d.popitem() == (1, 'foo') or fail('popitem 1')\n" + + "d == {} or fail('popitem 4')\n" + "d.popitem()"); } @@ -1379,11 +1379,11 @@ public class MethodLibraryTest extends EvaluationTestCase { new SkylarkTest() .testEval( "d = {2: 'bar', 1: 'foo'}\n" - + "if len(d) != 2: fail('setdefault 0')\n" - + "if d.setdefault(1, 'a') != 'foo': fail('setdefault 1')\n" - + "if d.setdefault(2) != 'bar': fail('setdefault 2')\n" - + "if d.setdefault(3) != None: fail('setdefault 3')\n" - + "if d.setdefault(4, 'b') != 'b': fail('setdefault 4')\n" + + "len(d) == 2 or fail('setdefault 0')\n" + + "d.setdefault(1, 'a') == 'foo' or fail('setdefault 1')\n" + + "d.setdefault(2) == 'bar' or fail('setdefault 2')\n" + + "d.setdefault(3) == None or fail('setdefault 3')\n" + + "d.setdefault(4, 'b') == 'b' or fail('setdefault 4')\n" + "d", "{1: 'foo', 2: 'bar', 3: None, 4: 'b'}"); } 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 86e7964041..374ac78531 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 @@ -1193,14 +1193,6 @@ public class SkylarkEvaluationTest extends EvaluationTest { } @Test - public void testTopLevelDict() throws Exception { - new SkylarkTest().setUp("if 1:", - " v = 'a'", - "else:", - " v = 'b'").testLookup("v", "a"); - } - - @Test public void testUserFunctionKeywordArgs() throws Exception { new SkylarkTest().setUp("def foo(a, b, c):", " return a + b + c", "s = foo(1, c=2, b=3)") diff --git a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java index df518ca67d..98695c56e0 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java @@ -216,21 +216,13 @@ public class SkylarkListTest extends EvaluationTestCase { @Test public void testConcatListNotEmpty() throws Exception { - eval("l = [1, 2] + [3, 4]", - "if l:", - " v = 1", - "else:", - " v = 0"); + eval("l = [1, 2] + [3, 4]", "v = 1 if l else 0"); assertThat(lookup("v")).isEqualTo(1); } @Test public void testConcatListEmpty() throws Exception { - eval("l = [] + []", - "if l:", - " v = 1", - "else:", - " v = 0"); + eval("l = [] + []", "v = 1 if l else 0"); assertThat(lookup("v")).isEqualTo(0); } diff --git a/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java index 27b84423b6..014d3be53a 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java @@ -175,73 +175,6 @@ public class ValidationTest extends EvaluationTestCase { } @Test - public void testReadOnlyWorksForSimpleBranching() { - parse("if 1:", " v = 'a'", "else:", " v = 'b'"); - } - - @Test - public void testReadOnlyWorksForNestedBranching() { - parse( - "if 1:", - " if 0:", - " v = 'a'", - " else:", - " v = 'b'", - "else:", - " if 0:", - " v = 'c'", - " else:", - " v = 'd'\n"); - } - - @Test - public void testReadOnlyWorksForDifferentLevelBranches() { - checkError("Variable v is read only", "if 1:", " if 1:", " v = 'a'", " v = 'b'\n"); - } - - @Test - public void testReadOnlyWorksWithinSimpleBranch() { - checkError( - "Variable v is read only", "if 1:", " v = 'a'", "else:", " v = 'b'", " v = 'c'\n"); - } - - @Test - public void testReadOnlyWorksWithinNestedBranch() { - checkError( - "Variable v is read only", - "if 1:", - " v = 'a'", - "else:", - " if 1:", - " v = 'b'", - " else:", - " v = 'c'", - " v = 'd'\n"); - } - - @Test - public void testReadOnlyWorksAfterSimpleBranch() { - checkError("Variable v is read only", "if 1:", " v = 'a'", "else:", " w = 'a'", "v = 'b'"); - } - - @Test - public void testReadOnlyWorksAfterNestedBranch() { - checkError("Variable v is read only", "if 1:", " if 1:", " v = 'a'", "v = 'b'"); - } - - @Test - public void testReadOnlyWorksAfterNestedBranch2() { - checkError( - "Variable v is read only", - "if 1:", - " v = 'a'", - "else:", - " if 0:", - " w = 1", - "v = 'b'\n"); - } - - @Test public void testModulesReadOnlyInFuncDefBody() { parse("def func():", " cmd_helper = depset()"); } |