diff options
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java b/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java index 9dc2a15db0..75913b42d5 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java @@ -20,7 +20,6 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import com.google.common.base.Joiner; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.syntax.DictionaryLiteral.DictionaryEntryLiteral; @@ -61,8 +60,9 @@ public class ParserTest extends EvaluationTestCase { /** Parses a build code (not Skylark) with PythonProcessing enabled */ private List<Statement> parseFileWithPython(String... input) { return Parser.parseFile( - ParserInputSource.create(Joiner.on("\n").join(input), null), + buildEnvironment.createLexer(input), getEventHandler(), + Environment.EMPTY_PACKAGE_LOCATOR, /*parsePython=*/true).statements; } @@ -1252,4 +1252,18 @@ public class ParserTest extends EvaluationTestCase { " else: return a"); assertContainsEvent("syntax error at 'else'"); } + + @Test + public void testIncludeFailureSkylark() throws Exception { + setFailFast(false); + parseFileForSkylark("include('//foo:bar')"); + assertContainsEvent("function 'include' does not exist"); + } + + @Test + public void testIncludeFailure() throws Exception { + setFailFast(false); + parseFile("include('nonexistent')\n"); + assertContainsEvent("Invalid label 'nonexistent'"); + } } |