############################################## # Assemble Robolectric_all ############################################## LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := Robolectric_all LOCAL_STATIC_JAVA_LIBRARIES := \ Robolectric_shadows_androidx_fragment \ Robolectric_shadows_httpclient \ Robolectric_shadows_framework \ Robolectric_shadows_supportv4 \ Robolectric_shadows_multidex \ Robolectric_robolectric \ Robolectric_annotations \ Robolectric_resources \ Robolectric_shadowapi \ Robolectric_sandbox \ Robolectric_junit \ Robolectric_utils \ robolectric-asm-6.0 \ robolectric-junit-4.12 \ robolectric-asm-tree-6.0 \ robolectric-guava-25.1-jre \ robolectric-asm-commons-6.0 \ robolectric-bouncycastle-1.46 \ robolectric-sqlite4java-0.282 \ robolectric-hamcrest-core-1.3 \ robolectric-hamcrest-library-1.3 \ robolectric-host-androidx-test-runner \ robolectric-host-org_apache_http_legacy LOCAL_JAVA_RESOURCE_DIRS := \ shadows/framework/src/main/resources \ src/main/resources include $(BUILD_HOST_JAVA_LIBRARY) include $(call first-makefiles-under, $(LOCAL_PATH)) ############################################## # Run all Robolectric tests ############################################## include $(CLEAR_VARS) .PHONY: Run_robolectric_test_suite Run_robolectric_test_suite: \ Run_robolectric_utils_tests \ Run_robolectric_sandbox_tests \ Run_robolectric_processor_tests \ Run_robolectric_resources_tests \ Run_robolectric_shadowapi_tests \ Run_robolectric_robolectric_tests \ Run_robolectric_shadows_supportv4_tests \ Run_robolectric_shadows_httpclient_tests \ Run_robolectric_shadows_androidx_fragment_tests ############################################## # target prebuilts for Robolectric ############################################## include $(CLEAR_VARS) LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \ robolectric-monitor-1.0.2-alpha1:../../../prebuilts/tools/common/m2/repository/com/android/support/test/monitor/1.0.2-alpha1/monitor-1.0.2-alpha1.aar include $(BUILD_MULTI_PREBUILT) ############################################## # host prebuilts for Robolectric ############################################## include $(CLEAR_VARS) LOCAL_PREBUILT_JAVA_LIBRARIES := \ robolectric-accessibility-test-framework-2.1:../../../prebuilts/tools/common/m2/repository/com/google/android/apps/common/testing/accessibility/framework/accessibility-test-framework/2.1/accessibility-test-framework-2.1.jar \ robolectric-ant-1.8.0:../../../prebuilts/tools/common/m2/repository/org/apache/ant/ant/1.8.0/ant-1.8.0.jar \ robolectric-asm-6.0:../../../prebuilts/tools/common/m2/repository/org/ow2/asm/asm/6.0/asm-6.0.jar \ robolectric-asm-commons-6.0:../../../prebuilts/tools/common/m2/repository/org/ow2/asm/asm-commons/6.0/asm-commons-6.0.jar \ robolectric-asm-tree-6.0:../../../prebuilts/tools/common/m2/repository/org/ow2/asm/asm-tree/6.0/asm-tree-6.0.jar \ robolectric-bouncycastle-1.46:../../../prebuilts/tools/common/m2/repository/org/bouncycastle/bcprov-jdk16/1.46/bcprov-jdk16-1.46.jar \ robolectric-byte-buddy-1.6.5:../../../prebuilts/tools/common/m2/repository/net/bytebuddy/byte-buddy/1.6.5/byte-buddy-1.6.5.jar \ robolectric-byte-buddy-agent-1.6.5:../../../prebuilts/tools/common/m2/repository/net/bytebuddy/byte-buddy-agent/1.6.5/byte-buddy-agent-1.6.5.jar \ robolectric-compile-testing-0.15:../../../prebuilts/tools/common/m2/repository/com/google/testing/compile/compile-testing/0.15/compile-testing-0.15.jar \ robolectric-diffutils-1.3.0:../../../prebuilts/tools/common/m2/repository/com/googlecode/java-diff-utils/diffutils/1.3.0/diffutils-1.3.0.jar \ robolectric-truth-0.42:../../../prebuilts/tools/common/m2/repository/com/google/truth/truth/0.42/truth-0.42.jar \ robolectric-gson-2.8:../../../prebuilts/tools/common/m2/repository/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar \ robolectric-guava-25.1-jre:../../../prebuilts/tools/common/m2/repository/com/google/guava/guava/25.1-jre/guava-25.1-jre.jar \ robolectric-hamcrest-core-1.3:../../../prebuilts/tools/common/m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar \ robolectric-hamcrest-library-1.3:../../../prebuilts/tools/common/m2/repository/org/hamcrest/hamcrest-library/1.3/hamcrest-library-1.3.jar \ robolectric-httpclient-4.0.3:../../../prebuilts/tools/common/m2/repository/org/apache/httpcomponents/httpclient/4.0.3/httpclient-4.0.3.jar \ robolectric-httpcore-4.0.1:../../../prebuilts/tools/common/m2/repository/org/apache/httpcomponents/httpcore/4.0.1/httpcore-4.0.1.jar \ robolectric-icu4j-53.1:../../../prebuilts/tools/common/m2/repository/com/ibm/icu/icu4j/53.1/icu4j-53.1.jar \ robolectric-javax.annotation-api-1.2:../../../prebuilts/tools/common/m2/repository/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar \ robolectric-junit-4.12:../../../prebuilts/tools/common/m2/repository/junit/junit/4.12/junit-4.12.jar \ robolectric-objenesis-2.5:../../../prebuilts/tools/common/m2/repository/org/objenesis/objenesis/2.5/objenesis-2.5.jar \ robolectric-maven-ant-tasks-2.1.3:../../../prebuilts/tools/common/m2/repository/org/apache/maven/maven-ant-tasks/2.1.3/maven-ant-tasks-2.1.3.jar \ robolectric-mockito-core-2.16.0:../../../prebuilts/tools/common/m2/repository/org/mockito/mockito-core/2.16.0/mockito-core-2.16.0.jar \ robolectric-sqlite4java-0.282:../../../prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/sqlite4java/0.282/sqlite4java-0.282.jar \ robolectric-xstream-1.4.8:../../../prebuilts/tools/common/m2/repository/com/thoughtworks/xstream/xstream/1.4.8/xstream-1.4.8.jar include $(BUILD_HOST_PREBUILT) ############################################## # HACK: specify these *HOST* jars needed to execute robolectric as though they are prebuilt *TARGET* java libraries ############################################## include $(CLEAR_VARS) LOCAL_MODULE := Robolectric_all-target LOCAL_MODULE_CLASS := JAVA_LIBRARIES LOCAL_UNINSTALLABLE_MODULE := true LOCAL_BUILT_MODULE_STEM := javalib.jar LOCAL_PREBUILT_MODULE_FILE := $(call java-lib-files, Robolectric_all, HOST) include $(BUILD_PREBUILT)