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.

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

View File

@@ -63,6 +63,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))