diff options
author | 2016-02-10 09:50:01 +0000 | |
---|---|---|
committer | 2016-02-10 10:26:33 +0000 | |
commit | caf1477087748b636b7be2bb112ea35f6f2140f4 (patch) | |
tree | 5aaaff9c43230b0caa31347ecff906ad32224af5 /src | |
parent | 87935bb3abd7ca181c87fdc3fce83a4b02f4b394 (diff) |
Move two visibility-related loading tests to BuildViewTest.
--
MOS_MIGRATED_REVID=114304151
Diffstat (limited to 'src')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java b/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java index 2713244930..a740a1f8a3 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java @@ -39,7 +39,6 @@ import com.google.devtools.build.lib.actions.FailAction; import com.google.devtools.build.lib.analysis.BuildView.AnalysisResult; import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException; import com.google.devtools.build.lib.analysis.util.AnalysisMock; -import com.google.devtools.build.lib.analysis.util.AnalysisTestCase.Flag; import com.google.devtools.build.lib.analysis.util.BuildViewTestBase; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.Aspect; @@ -1106,6 +1105,39 @@ public class BuildViewTest extends BuildViewTestBase { } } + + @Test + public void testVisibilityReferencesNonexistentPackage() throws Exception { + scratch.file("z/a/BUILD", + "py_library(name='a', visibility=['//nonexistent:nothing'])"); + scratch.file("z/b/BUILD", + "py_library(name='b', deps=['//z/a:a'])"); + reporter.removeHandler(failFastHandler); + try { + update("//z/b:b"); + fail(); + } catch (LoadingFailedException | ViewCreationFailedException expected) { + assertContainsEvent("no such package 'nonexistent'"); + } + } + + // regression test ("java.lang.IllegalStateException: cannot happen") + @Test + public void testDefaultVisibilityInNonexistentPackage() throws Exception { + scratch.file("z/a/BUILD", + "package(default_visibility=['//b'])", + "py_library(name='alib')"); + scratch.file("z/b/BUILD", + "py_library(name='b', deps=['//z/a:alib'])"); + reporter.removeHandler(failFastHandler); + try { + update("//z/b:b"); + fail(); + } catch (LoadingFailedException | ViewCreationFailedException expected) { + assertContainsEvent("no such package 'b'"); + } + } + /** Runs the same test with the reduced loading phase. */ @TestSpec(size = Suite.SMALL_TESTS) @RunWith(JUnit4.class) |