From 4823935a84c0b1b27fee0af91ecbbf85fdde508b Mon Sep 17 00:00:00 2001 From: Paul Duffin Date: Fri, 19 May 2017 09:05:54 +0100 Subject: Added android.test.mock and android.test.mock.sdk targets The android.test.mock will be used for any targets that require android.test.mock classes but which do not already depend on the sdk. It is also the library that will be added to the classpath at runtime when an app has the following in their manifest. The android.test.mock.sdk will be used by targets that require android.test.mock classes and which build against the SDK. It contains stub classes (like android.jar). It is also the library that will be copied into the optional directory of the SDK. (cherry picked from f74752293d1d25633aebc42c600717d0296a0820) Bug: 30188076 Test: make checkbuild Change-Id: If199180e1136da1927a9e7c7bcafbcfb29cf1274 Merged-In: Ia3fcd47c644b8e5a573f891571a7b3772eac63f9 --- test-runner/Android.mk | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/test-runner/Android.mk b/test-runner/Android.mk index 3c36e429ef7f..0752661b3a68 100644 --- a/test-runner/Android.mk +++ b/test-runner/Android.mk @@ -16,6 +16,8 @@ LOCAL_PATH:= $(call my-dir) +# Build the android.test.runner library +# ===================================== include $(CLEAR_VARS) LOCAL_SRC_FILES := $(call all-java-files-under, src) @@ -26,5 +28,56 @@ LOCAL_MODULE:= android.test.runner include $(BUILD_JAVA_LIBRARY) +# Build the android.test.mock library +# =================================== +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := $(call all-java-files-under, src/android/test/mock) + +LOCAL_JAVA_LIBRARIES := core-oj core-libart framework + +LOCAL_MODULE:= android.test.mock + +include $(BUILD_JAVA_LIBRARY) + +# Generate the stub source files for android.test.mock.sdk +# ======================================================== +include $(CLEAR_VARS) +LOCAL_SRC_FILES := $(call all-java-files-under, src/android/test/mock) + +LOCAL_JAVA_LIBRARIES := core-oj core-libart framework +LOCAL_MODULE_CLASS := JAVA_LIBRARIES +LOCAL_DROIDDOC_SOURCE_PATH := $(LOCAL_PATH)/src/android/test/mock + +LOCAL_DROIDDOC_OPTIONS:= \ + -stubpackages android.test.mock \ + -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android.test.mock.sdk_intermediates/src \ + -nodocs + +LOCAL_UNINSTALLABLE_MODULE := true +LOCAL_MODULE := android-test-mock-stubs-gen + +include $(BUILD_DROIDDOC) + +# Remember the target that will trigger the code generation. +android_test_mock_gen_stamp := $(full_target) + +# Build the android.test.mock.sdk library +# ======================================= +include $(CLEAR_VARS) + +LOCAL_MODULE := android.test.mock.sdk + +LOCAL_SOURCE_FILES_ALL_GENERATED := true + +include $(BUILD_STATIC_JAVA_LIBRARY) + +# Make sure to run droiddoc first to generate the stub source files. +$(full_classes_compiled_jar) : $(android_test_mock_gen_stamp) +$(full_classes_jack) : $(android_test_mock_gen_stamp) + +# Archive a copy of the classes.jar in SDK build. +$(call dist-for-goals,sdk win_sdk,$(full_classes_jar):android.test.mock.jar) + # additionally, build unit tests in a separate .apk include $(call all-makefiles-under,$(LOCAL_PATH)) -- cgit v1.2.3-59-g8ed1b