summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Gielzak <jgielzak@google.com>2019-02-18 10:32:40 -0800
committerandroid-build-merger <android-build-merger@google.com>2019-02-18 10:32:40 -0800
commit7f997d4cfca99c17760b5533f2391fbbcc8bb273 (patch)
tree22901c2a60eefb3225bfc168d22b4d24ef821406
parenta05d598bc047192ac65326439a75f25c033fae6d (diff)
parent049c1589ee7c189f2963d427d0036afb7c98537f (diff)
downloadbase-temp-124234733-master.tar.gz
Merge "Revert "Remove legacy-test and legacy-android-test targets""temp-124234733-master
am: 049c1589ee Change-Id: Ia84907bfa038954256bc791490a490dd338b33ce
-rw-r--r--test-base/Android.bp19
-rw-r--r--test-legacy/Android.bp36
-rw-r--r--test-legacy/Android.mk25
-rw-r--r--test-mock/Android.bp16
-rw-r--r--test-runner/Android.bp2
5 files changed, 91 insertions, 7 deletions
diff --git a/test-base/Android.bp b/test-base/Android.bp
index 8aa0aaf363dd..157609cec09c 100644
--- a/test-base/Android.bp
+++ b/test-base/Android.bp
@@ -44,7 +44,7 @@ java_sdk_library {
// ==========================================
// This is only intended for inclusion in the android.test.runner-minus-junit,
// robolectric_android-all-stub and repackaged.android.test.* libraries.
-// Must not be used elsewhere.
+// Must not be used elewhere.
java_library_static {
name: "android.test.base_static",
installable: false,
@@ -61,6 +61,19 @@ java_library_static {
sdk_version: "current",
}
+// Build the legacy-test library
+// =============================
+// This contains the junit.framework and android.test classes that were in
+// Android API level 25 excluding those from android.test.runner.
+// Also contains the com.android.internal.util.Predicate[s] classes.
+java_library {
+ name: "legacy-test",
+ installable: true,
+
+ sdk_version: "current",
+ static_libs: ["android.test.base_static"],
+}
+
// Build the repackaged.android.test.base library
// ==============================================
// This contains repackaged versions of the classes from
@@ -80,8 +93,8 @@ java_library_static {
// ===============================================
// This contains the android.test classes from android.test.base plus
// the com.android.internal.util.Predicate[s] classes. This is only
-// intended for inclusion in android.test.legacy and must not be used
-// elsewhere.
+// intended for inclusion in the android.test.legacy and
+// legacy-android-test static libraries and must not be used elsewhere.
java_library_static {
name: "android.test.base-minus-junit",
diff --git a/test-legacy/Android.bp b/test-legacy/Android.bp
new file mode 100644
index 000000000000..a69f422b3bdb
--- /dev/null
+++ b/test-legacy/Android.bp
@@ -0,0 +1,36 @@
+//
+// Copyright (C) 2018 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.
+//
+
+// Build the legacy-android-test library
+// =====================================
+// This contains the android.test classes that were in Android API level 25,
+// including those from android.test.runner.
+// Also contains the com.android.internal.util.Predicate[s] classes.
+java_library_static {
+ name: "legacy-android-test",
+
+ static_libs: [
+ "android.test.base-minus-junit",
+ "android.test.runner-minus-junit",
+ "android.test.mock_static",
+ ],
+
+ no_framework_libs: true,
+ libs: [
+ "framework",
+ "junit",
+ ],
+}
diff --git a/test-legacy/Android.mk b/test-legacy/Android.mk
index af26c5b80717..da47de0a3d35 100644
--- a/test-legacy/Android.mk
+++ b/test-legacy/Android.mk
@@ -24,16 +24,35 @@ ifeq (,$(TARGET_BUILD_APPS)$(filter true,$(TARGET_BUILD_PDK)))
# Built against the SDK so that it can be statically included in APKs
# without breaking link type checks.
#
+# This builds directly from the source rather than simply statically
+# including the android.test.base-minus-junit and
+# android.test.runner-minus-junit libraries because the latter library
+# cannot itself be built against the SDK. That is because it uses on
+# an internal method (setTestContext) on the AndroidTestCase class.
+# That class is provided by both the android.test.base-minus-junit and
+# the current SDK and as the latter is first on the classpath its
+# version is used. Unfortunately, it does not provide the internal
+# method and so compilation fails.
+#
+# Building from source avoids that because the compiler will use the
+# source version of AndroidTestCase instead of the one from the current
+# SDK.
+#
+# The use of the internal method does not prevent this from being
+# statically included because the class that provides the method is
+# also included in this library.
include $(CLEAR_VARS)
LOCAL_MODULE := android.test.legacy
+LOCAL_SRC_FILES := \
+ $(call all-java-files-under, ../test-base/src/android) \
+ $(call all-java-files-under, ../test-base/src/com) \
+ $(call all-java-files-under, ../test-runner/src/android) \
+
LOCAL_SDK_VERSION := current
LOCAL_JAVA_LIBRARIES := junit android.test.mock.stubs
-LOCAL_STATIC_JAVA_LIBRARIES := \
- android.test.base-minus-junit \
- android.test.runner-minus-junit \
include $(BUILD_STATIC_JAVA_LIBRARY)
diff --git a/test-mock/Android.bp b/test-mock/Android.bp
index e1d6e01d6d06..43b765d8b783 100644
--- a/test-mock/Android.bp
+++ b/test-mock/Android.bp
@@ -30,3 +30,19 @@ java_sdk_library {
srcs_lib_whitelist_pkgs: ["android"],
compile_dex: true,
}
+
+// Build the android.test.mock_static library
+// ==========================================
+// This is only intended for inclusion in the legacy-android-test.
+// Must not be used elewhere.
+java_library_static {
+ name: "android.test.mock_static",
+
+ java_version: "1.8",
+ srcs: ["src/**/*.java"],
+
+ no_framework_libs: true,
+ libs: [
+ "framework",
+ ],
+}
diff --git a/test-runner/Android.bp b/test-runner/Android.bp
index 35212020be7b..db5053eeb903 100644
--- a/test-runner/Android.bp
+++ b/test-runner/Android.bp
@@ -45,7 +45,7 @@ java_sdk_library {
// Build the android.test.runner-minus-junit library
// =================================================
-// This is only intended for inclusion in the android.test.legacy static
+// This is only intended for inclusion in the legacy-android-test static
// library and must not be used elsewhere.
java_library {
name: "android.test.runner-minus-junit",