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("""