From 87f40973c52e3323abe8a2e850296026671cb6ad Mon Sep 17 00:00:00 2001 From: ajmichael Date: Tue, 5 Sep 2017 17:18:51 +0200 Subject: Make android_sdk_repository resilient to prerelease and malformed system images Fixes https://github.com/bazelbuild/bazel/issues/3672 RELNOTES: None PiperOrigin-RevId: 167581302 --- .../bazel/rules/android/AndroidSdkRepositoryTest.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src') diff --git a/src/test/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryTest.java b/src/test/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryTest.java index 9b42d6db7e..61a09e273f 100644 --- a/src/test/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryTest.java +++ b/src/test/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryTest.java @@ -177,6 +177,22 @@ public class AndroidSdkRepositoryTest extends BuildViewTestCase { "src external/androidsdk/system-images/android-24/google_apis/x86/system.img"); } + // Regression test for https://github.com/bazelbuild/bazel/issues/3672. + @Test + public void testMalformedSystemImageDirectories() throws Exception { + scratchPlatformsDirectories(25, 26); + scratchBuildToolsDirectories("26.0.1"); + scratchSystemImagesDirectories("android-25/default/armeabi-v7a", "android-O/google_apis/x86"); + FileSystemUtils.appendIsoLatin1(scratch.resolve("WORKSPACE"), + "local_repository(name = 'bazel_tools', path = '/bazel_tools_workspace')", + "android_sdk_repository(", + " name = 'androidsdk',", + " path = '/sdk',", + ")"); + invalidatePackages(); + assertThat(getConfiguredTarget("@androidsdk//:emulator_images_android_25_arm")).isNotNull(); + } + @Test public void testBuildToolsHighestVersionDetection() throws Exception { scratchPlatformsDirectories(25); -- cgit v1.2.3