diff options
Diffstat (limited to 'libnativeloader/test/Android.bp')
-rw-r--r-- | libnativeloader/test/Android.bp | 146 |
1 files changed, 107 insertions, 39 deletions
diff --git a/libnativeloader/test/Android.bp b/libnativeloader/test/Android.bp index fb9ae0d9d3..1d3a07a5f3 100644 --- a/libnativeloader/test/Android.bp +++ b/libnativeloader/test/Android.bp @@ -24,57 +24,125 @@ package { } cc_library { - name: "libfoo.oem1", - srcs: ["test.cpp"], - cflags: ["-DLIBNAME=\"libfoo.oem1.so\""], - shared_libs: [ - "libbase", - ], + name: "libnativeloader_testlib", + srcs: [], + stl: "none", } -cc_library { - name: "libbar.oem1", - srcs: ["test.cpp"], - cflags: ["-DLIBNAME=\"libbar.oem1.so\""], - shared_libs: [ - "libbase", - ], +// This app is just an intermediate container to be able to include the .so +// library in the host test. It's not actually installed or started. +android_test_helper_app { + name: "library_container_app", + defaults: ["art_module_source_build_java_defaults"], + manifest: "library_container_app_manifest.xml", + compile_multilib: "both", + jni_libs: ["libnativeloader_testlib"], } -cc_library { - name: "libfoo.oem2", - srcs: ["test.cpp"], - cflags: ["-DLIBNAME=\"libfoo.oem2.so\""], - shared_libs: [ - "libbase", +java_library { + name: "loadlibrarytest_test_utils", + static_libs: [ + "androidx.test.ext.junit", + "androidx.test.ext.truth", ], + srcs: ["src/android/test/lib/TestUtils.java"], } -cc_library { - name: "libbar.oem2", - srcs: ["test.cpp"], - cflags: ["-DLIBNAME=\"libbar.oem2.so\""], - shared_libs: [ - "libbase", - ], +// Test fixture that represents a shared library in /system/framework. +java_library { + name: "libnativeloader_system_shared_lib", + installable: true, + srcs: ["src/android/test/systemsharedlib/SystemSharedLib.java"], } -cc_library { - name: "libfoo.product1", - srcs: ["test.cpp"], - cflags: ["-DLIBNAME=\"libfoo.product1.so\""], - product_specific: true, - shared_libs: [ - "libbase", +// Test fixture that represents a shared library in /system_ext/framework. +java_library { + name: "libnativeloader_system_ext_shared_lib", + installable: true, + srcs: ["src/android/test/systemextsharedlib/SystemExtSharedLib.java"], +} + +java_defaults { + name: "loadlibrarytest_app_defaults", + defaults: ["art_module_source_build_java_defaults"], + static_libs: [ + "androidx.test.ext.junit", + "androidx.test.rules", + "loadlibrarytest_test_utils", + ], + libs: [ + "libnativeloader_system_shared_lib", + "libnativeloader_system_ext_shared_lib", ], } -cc_library { - name: "libbar.product1", - srcs: ["test.cpp"], - cflags: ["-DLIBNAME=\"libbar.product1.so\""], +android_test_helper_app { + name: "loadlibrarytest_system_priv_app", + defaults: ["loadlibrarytest_app_defaults"], + manifest: "loadlibrarytest_system_priv_app_manifest.xml", + // /system/priv-app currently reuses the same test as /system/app. + srcs: ["src/android/test/app/SystemAppTest.java"], +} + +android_test_helper_app { + name: "loadlibrarytest_system_app", + defaults: ["loadlibrarytest_app_defaults"], + manifest: "loadlibrarytest_system_app_manifest.xml", + srcs: ["src/android/test/app/SystemAppTest.java"], +} + +android_test_helper_app { + name: "loadlibrarytest_system_ext_app", + defaults: ["loadlibrarytest_app_defaults"], + system_ext_specific: true, + manifest: "loadlibrarytest_system_ext_app_manifest.xml", + // /system_ext should behave the same as /system, so use the same test class there. + srcs: ["src/android/test/app/SystemAppTest.java"], +} + +android_test_helper_app { + name: "loadlibrarytest_product_app", + defaults: ["loadlibrarytest_app_defaults"], product_specific: true, - shared_libs: [ - "libbase", + manifest: "loadlibrarytest_product_app_manifest.xml", + srcs: ["src/android/test/app/ProductAppTest.java"], +} + +android_test_helper_app { + name: "loadlibrarytest_vendor_app", + defaults: ["loadlibrarytest_app_defaults"], + vendor: true, + manifest: "loadlibrarytest_vendor_app_manifest.xml", + srcs: ["src/android/test/app/VendorAppTest.java"], +} + +// A normal app installed in /data. +android_test_helper_app { + name: "loadlibrarytest_data_app", + defaults: ["loadlibrarytest_app_defaults"], + manifest: "loadlibrarytest_data_app_manifest.xml", + srcs: ["src/android/test/app/DataAppTest.java"], +} + +java_test_host { + name: "libnativeloader_e2e_tests", + defaults: ["art_module_source_build_java_defaults"], + srcs: ["src/android/test/hostside/*.java"], + libs: [ + "compatibility-tradefed", + "tradefed", + ], + data: [ + ":library_container_app", + ":libnativeloader_system_shared_lib", + ":libnativeloader_system_ext_shared_lib", + ":loadlibrarytest_system_priv_app", + ":loadlibrarytest_system_app", + ":loadlibrarytest_system_ext_app", + ":loadlibrarytest_product_app", + ":loadlibrarytest_vendor_app", + ":loadlibrarytest_data_app", ], + test_config: "libnativeloader_e2e_tests.xml", + test_suites: ["general-tests"], } |