Add android.test.legacy target

Adds a library that builds against the public API and so can be safely
statically included into applications to avoid them having to depend
on the android.test.base and android.test.runner runtime libraries.

(cherry picked from commit a70f66cb5e)

Bug: 30188076
Test: make checkbuild
Change-Id: Ibd8cb61d00a65dbcf630672706323e42d82e6ba2
Merged-In: Iae7e3c64392e11035322092ed8e194740ba2d321
This commit is contained in:
Paul Duffin
2018-01-05 15:11:18 +00:00
parent cc600d6d47
commit bee7cce828
2 changed files with 35 additions and 0 deletions

View File

@@ -64,6 +64,26 @@ java_library_static {
jarjar_rules: "jarjar-rules.txt",
}
// Build the android.test.base-minus-junit library
// ===============================================
// 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 the android.test.legacy static library and
// must not be used elsewhere.
java_library_static {
name: "android.test.base-minus-junit",
srcs: [
"src/android/**/*.java",
"src/com/**/*.java",
],
sdk_version: "current",
libs: [
"junit",
],
}
// Build the legacy-android-test library
// =====================================
// This contains the android.test classes that were in Android API level 25,

View File

@@ -117,5 +117,20 @@ update-android-test-runner-api: $(ANDROID_TEST_RUNNER_OUTPUT_API_FILE) | $(ACP)
endif # not TARGET_BUILD_APPS not TARGET_BUILD_PDK=true
# Build the android.test.legacy library
# =====================================
include $(CLEAR_VARS)
LOCAL_MODULE := android.test.legacy
LOCAL_SRC_FILES := $(call all-java-files-under, src/android)
LOCAL_SDK_VERSION := current
LOCAL_JAVA_LIBRARIES := android.test.mock.stubs junit
LOCAL_STATIC_JAVA_LIBRARIES := android.test.base-minus-junit
include $(BUILD_STATIC_JAVA_LIBRARY)
# additionally, build unit tests in a separate .apk
include $(call all-makefiles-under,$(LOCAL_PATH))