Use an override for ANDROID_HOME in our lint tests.

* For some reason this bug only manifests in the `androidx-platform-dev`
  branch.

Fixes: b/144918719
Test: Existing unit tests pass.
Change-Id: I1d10d27950f2087d26402426578079a0cd933950
diff --git a/work/workmanager-lint/src/test/java/androidx/work/lint/BadConfigurationProviderTest.kt b/work/workmanager-lint/src/test/java/androidx/work/lint/BadConfigurationProviderTest.kt
index ba4af62..771a3f4 100644
--- a/work/workmanager-lint/src/test/java/androidx/work/lint/BadConfigurationProviderTest.kt
+++ b/work/workmanager-lint/src/test/java/androidx/work/lint/BadConfigurationProviderTest.kt
@@ -45,7 +45,7 @@
             WORK_MANAGER_CONFIGURATION_PROVIDER,
             customApplication
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(BadConfigurationProviderIssueDetector.ISSUE)
             .run()
             .expectClean()
@@ -88,7 +88,7 @@
             customApplication,
             invalidProvider
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(BadConfigurationProviderIssueDetector.ISSUE)
             .run()
             .expect("""
@@ -123,7 +123,7 @@
             WORK_MANAGER_CONFIGURATION_PROVIDER,
             customApplication
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(BadConfigurationProviderIssueDetector.ISSUE)
             .run()
             .expectClean()
diff --git a/work/workmanager-lint/src/test/java/androidx/work/lint/Lint.kt b/work/workmanager-lint/src/test/java/androidx/work/lint/Lint.kt
new file mode 100644
index 0000000..915c853
--- /dev/null
+++ b/work/workmanager-lint/src/test/java/androidx/work/lint/Lint.kt
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package androidx.work.lint
+
+import java.io.File
+import java.io.InputStream
+import java.util.Properties
+
+fun sdkDirectory(): Lazy<File> = lazy {
+    var stream: InputStream? = null
+    try {
+        stream = Stubs::class.java.classLoader.getResourceAsStream("sdk.prop")
+        val properties = Properties()
+        properties.load(stream)
+        File(properties["sdk.dir"] as String)
+    } finally {
+        stream?.close()
+    }
+}
diff --git a/work/workmanager-lint/src/test/java/androidx/work/lint/PeriodicEnqueueIssueDetectorTest.kt b/work/workmanager-lint/src/test/java/androidx/work/lint/PeriodicEnqueueIssueDetectorTest.kt
index ab0dd04..10395fe 100644
--- a/work/workmanager-lint/src/test/java/androidx/work/lint/PeriodicEnqueueIssueDetectorTest.kt
+++ b/work/workmanager-lint/src/test/java/androidx/work/lint/PeriodicEnqueueIssueDetectorTest.kt
@@ -54,7 +54,7 @@
             PERIODIC_WORK_REQUEST,
             snippet
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(PeriodicEnqueueIssueDetector.ISSUE)
             .run()
             .expect("""
@@ -94,7 +94,7 @@
             PERIODIC_WORK_REQUEST,
             snippet
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(PeriodicEnqueueIssueDetector.ISSUE)
             .run()
             .expect("""
@@ -136,7 +136,7 @@
             PERIODIC_WORK_REQUEST,
             snippet
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(PeriodicEnqueueIssueDetector.ISSUE)
             .run()
             .expect("""
@@ -175,7 +175,7 @@
             PERIODIC_WORK_REQUEST,
             snippet
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(PeriodicEnqueueIssueDetector.ISSUE)
             .run()
             .expectClean()
@@ -208,7 +208,7 @@
             PERIODIC_WORK_REQUEST,
             snippet
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(PeriodicEnqueueIssueDetector.ISSUE)
             .run()
             .expectClean()
diff --git a/work/workmanager-lint/src/test/java/androidx/work/lint/RemoveWorkManagerInitializerDetectorTest.kt b/work/workmanager-lint/src/test/java/androidx/work/lint/RemoveWorkManagerInitializerDetectorTest.kt
index 2a472bf4..d6dcce2 100644
--- a/work/workmanager-lint/src/test/java/androidx/work/lint/RemoveWorkManagerInitializerDetectorTest.kt
+++ b/work/workmanager-lint/src/test/java/androidx/work/lint/RemoveWorkManagerInitializerDetectorTest.kt
@@ -68,7 +68,7 @@
             WORK_MANAGER_CONFIGURATION_PROVIDER,
             customApplication
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(RemoveWorkManagerInitializerDetector.ISSUE)
             .run()
             .expectClean()
@@ -115,7 +115,7 @@
             WORK_MANAGER_CONFIGURATION_PROVIDER,
             customApplication
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(RemoveWorkManagerInitializerDetector.ISSUE)
             .run()
             .expectClean()
@@ -160,7 +160,7 @@
             WORK_MANAGER_CONFIGURATION_PROVIDER,
             customApplication
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(RemoveWorkManagerInitializerDetector.ISSUE)
             .run()
             .expect("""
@@ -214,7 +214,7 @@
             WORK_MANAGER_CONFIGURATION_PROVIDER,
             customApplication
         )
-            .allowMissingSdk()
+            .sdkHome(sdkDirectory().value)
             .issues(RemoveWorkManagerInitializerDetector.ISSUE)
             .run()
             .expect("""