############################################## # Compile Robolectric processor ############################################## LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := Robolectric_processor LOCAL_MODULE_CLASS := JAVA_LIBRARIES LOCAL_IS_HOST_MODULE := true sdks_txt_file := $(call local-intermediates-dir)/sdks.txt LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java) LOCAL_JAVA_RESOURCE_DIRS := src/main/resources LOCAL_CLASSPATH := $(HOST_JDK_TOOLS_JAR) LOCAL_JAVA_LIBRARIES := \ Robolectric_annotations \ Robolectric_shadowapi \ robolectric-asm-commons-6.0 \ robolectric-guava-25.1-jre \ robolectric-asm-tree-6.0 \ robolectric-gson-2.8 \ robolectric-asm-6.0 \ jsr305 LOCAL_JAVA_RESOURCE_FILES := $(sdks_txt_file) $(sdks_txt_file): private_top := $(TOP) $(sdks_txt_file): $(hide) rm -f $@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-4.1.2_r1-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-4.2.2_r1.2-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-4.3_r2-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-4.4_r1-robolectric-r2.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-5.0.2_r3-robolectric-r0.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-5.1.1_r9-robolectric-r2.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-6.0.1_r3-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-7.0.0_r1-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-7.1.0_r7-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-8.0.0_r4-robolectric-r1.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-8.1.0-robolectric-4611349.jar" >>$@ $(hide) echo "$(private_top)/prebuilts/misc/common/robolectric/android-all/android-all-9-robolectric-4913185-2.jar" >>$@ ifdef TARGET_OPENJDK9 LOCAL_JAVACFLAGS := \ --add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \ --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED endif include $(BUILD_HOST_JAVA_LIBRARY) ############################################## # Compile Robolectric processor tests ############################################## include $(CLEAR_VARS) LOCAL_MODULE := Robolectric_processor_tests LOCAL_SRC_FILES := $(call all-java-files-under, src/test/java) LOCAL_JAVA_RESOURCE_DIRS := src/test/resources LOCAL_JAVA_RESOURCE_FILES := $(LOCAL_PATH)/src/test/resources LOCAL_JAVA_LIBRARIES := \ Robolectric_annotations \ Robolectric_processor \ robolectric-compile-testing-0.15 \ robolectric-mockito-core-2.16.0 \ robolectric-guava-25.1-jre \ robolectric-junit-4.12 \ robolectric-truth-0.42 \ robolectric-gson-2.8 \ jsr305 # Disable annotation processing while compiling tests to avoid executing RobolectricProcessor. LOCAL_JAVACFLAGS := -proc:none include $(BUILD_HOST_JAVA_LIBRARY) ############################################## # Execute Robolectric processor tests ############################################## include $(CLEAR_VARS) LOCAL_MODULE := Run_robolectric_processor_tests test_source_directory := $(LOCAL_PATH)/src/test/java test_runtime_libraries := \ Robolectric_processor_tests \ Robolectric_annotations \ Robolectric_processor \ Robolectric_shadowapi \ robolectric-javax.annotation-api-1.2 \ robolectric-byte-buddy-agent-1.6.5 \ robolectric-compile-testing-0.15 \ robolectric-mockito-core-2.16.0 \ robolectric-hamcrest-core-1.3 \ robolectric-byte-buddy-1.6.5 \ robolectric-guava-25.1-jre \ robolectric-objenesis-2.5 \ robolectric-junit-4.12 \ robolectric-truth-0.42 \ robolectric-gson-2.8 \ jsr305 include external/robolectric-shadows/run_robolectric_module_tests.mk