aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
diff options
context:
space:
mode:
authorGravatar Miguel Alcon Pinto <malcon@google.com>2016-08-22 14:21:30 +0000
committerGravatar Philipp Wollermann <philwo@google.com>2016-08-22 14:49:42 +0000
commit927f3b280f1a37d6cbbae3ac69eb147b90358d54 (patch)
tree38cb211c9f5fc3fc49f8b4bc22a3da9bc0bda2de /src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
parent1a86d556e97622fd23fd217eafecbc2f562c1538 (diff)
Move SkylarkImport from LoadStatement to BuildFileAST
This allow us to skip the import validation in non-build usages. -- MOS_MIGRATED_REVID=130936612
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.java18
1 files changed, 10 insertions, 8 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 3878fc4ea3..d6897dce7d 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
@@ -26,6 +26,7 @@ import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.syntax.Argument.Passed;
import com.google.devtools.build.lib.syntax.DictionaryLiteral.DictionaryEntryLiteral;
+import com.google.devtools.build.lib.syntax.SkylarkImports.SkylarkImportSyntaxException;
import com.google.devtools.build.lib.syntax.util.EvaluationTestCase;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -1086,12 +1087,12 @@ public class ParserTest extends EvaluationTestCase {
}
@Test
- public void testValidAbsoluteImportPath() {
+ public void testValidAbsoluteImportPath() throws SkylarkImportSyntaxException {
String importString = "/some/skylark/file";
List<Statement> statements =
parseFileForSkylark("load('" + importString + "', 'fun_test')\n");
LoadStatement stmt = (LoadStatement) statements.get(0);
- SkylarkImport imp = stmt.getImport();
+ SkylarkImport imp = SkylarkImports.create(stmt.getImport());
assertThat(imp.getImportString()).named("getImportString()").isEqualTo("/some/skylark/file");
assertThat(imp.hasAbsolutePath()).named("hasAbsolutePath()").isTrue();
@@ -1106,11 +1107,11 @@ public class ParserTest extends EvaluationTestCase {
}
private void validNonAbsoluteImportTest(String importString, String containingFileLabelString,
- String expectedLabelString) {
+ String expectedLabelString) throws SkylarkImportSyntaxException {
List<Statement> statements =
parseFileForSkylark("load('" + importString + "', 'fun_test')\n");
LoadStatement stmt = (LoadStatement) statements.get(0);
- SkylarkImport imp = stmt.getImport();
+ SkylarkImport imp = SkylarkImports.create(stmt.getImport());
assertThat(imp.getImportString()).named("getImportString()").isEqualTo(importString);
assertThat(imp.hasAbsolutePath()).named("hasAbsolutePath()").isFalse();
@@ -1159,7 +1160,8 @@ public class ParserTest extends EvaluationTestCase {
invalidImportTest("\tfile", SkylarkImports.INVALID_FILENAME_PREFIX);
}
- private void validAbsoluteImportLabelTest(String importString) {
+ private void validAbsoluteImportLabelTest(String importString)
+ throws SkylarkImportSyntaxException {
validNonAbsoluteImportTest(importString, /*irrelevant*/ "//another/path:BUILD",
/*expected*/ importString);
}
@@ -1242,7 +1244,7 @@ public class ParserTest extends EvaluationTestCase {
List<Statement> statements = parseFileForSkylark(
"load('/foo/bar/file', 'fun_test')\n");
LoadStatement stmt = (LoadStatement) statements.get(0);
- assertEquals("/foo/bar/file", stmt.getImport().getImportString());
+ assertEquals("/foo/bar/file", stmt.getImport());
assertThat(stmt.getSymbols()).hasSize(1);
Identifier sym = stmt.getSymbols().get(0);
int startOffset = sym.getLocation().getStartOffset();
@@ -1256,7 +1258,7 @@ public class ParserTest extends EvaluationTestCase {
List<Statement> statements = parseFileForSkylark(
"load('/foo/bar/file', 'fun_test',)\n");
LoadStatement stmt = (LoadStatement) statements.get(0);
- assertEquals("/foo/bar/file", stmt.getImport().getImportString());
+ assertEquals("/foo/bar/file", stmt.getImport());
assertThat(stmt.getSymbols()).hasSize(1);
}
@@ -1265,7 +1267,7 @@ public class ParserTest extends EvaluationTestCase {
List<Statement> statements = parseFileForSkylark(
"load('file', 'foo', 'bar')\n");
LoadStatement stmt = (LoadStatement) statements.get(0);
- assertEquals("file", stmt.getImport().getImportString());
+ assertEquals("file", stmt.getImport());
assertThat(stmt.getSymbols()).hasSize(2);
}