# Copyright 2014 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/android/rules.gni") group("android") { testonly = true deps = [ ":system_java", ":mojo_javatests", ":mojo_test_apk", ] } generate_jni("jni_headers") { sources = [ "javatests/src/org/chromium/mojo/MojoTestCase.java", "javatests/src/org/chromium/mojo/bindings/ValidationTestUtil.java", ] public_deps = [ ":system_java_jni_headers", ] jni_package = "mojo" } generate_jni("system_java_jni_headers") { sources = [ "system/src/org/chromium/mojo/system/impl/BaseRunLoop.java", "system/src/org/chromium/mojo/system/impl/CoreImpl.java", ] jni_package = "mojo" } source_set("libsystem_java") { sources = [ "system/base_run_loop.cc", "system/base_run_loop.h", "system/core_impl.cc", "system/core_impl.h", ] deps = [ ":system_java_jni_headers", "//base", "//mojo/environment:chromium", "//mojo/message_pump", "//mojo/public/cpp/environment", "//third_party/mojo/src/mojo/edk/system", ] } android_library("system_java") { java_files = [ "system/src/org/chromium/mojo/system/impl/BaseRunLoop.java", "system/src/org/chromium/mojo/system/impl/CoreImpl.java", "system/src/org/chromium/mojo/system/impl/DataPipeConsumerHandleImpl.java", "system/src/org/chromium/mojo/system/impl/DataPipeProducerHandleImpl.java", "system/src/org/chromium/mojo/system/impl/HandleBase.java", "system/src/org/chromium/mojo/system/impl/MessagePipeHandleImpl.java", "system/src/org/chromium/mojo/system/impl/SharedBufferHandleImpl.java", "system/src/org/chromium/mojo/system/impl/UntypedHandleImpl.java", ] deps = [ "//base:base_java", "//mojo/public/java:system", ] } android_library("mojo_javatests") { testonly = true java_files = [ "javatests/src/org/chromium/mojo/HandleMock.java", "javatests/src/org/chromium/mojo/MojoTestCase.java", "javatests/src/org/chromium/mojo/TestUtils.java", "javatests/src/org/chromium/mojo/bindings/BindingsHelperTest.java", "javatests/src/org/chromium/mojo/bindings/BindingsTest.java", "javatests/src/org/chromium/mojo/bindings/BindingsTestUtils.java", "javatests/src/org/chromium/mojo/bindings/BindingsVersioningTest.java", "javatests/src/org/chromium/mojo/bindings/CallbacksTest.java", "javatests/src/org/chromium/mojo/bindings/ConnectorTest.java", "javatests/src/org/chromium/mojo/bindings/ExecutorFactoryTest.java", "javatests/src/org/chromium/mojo/bindings/InterfacesTest.java", "javatests/src/org/chromium/mojo/bindings/MessageHeaderTest.java", "javatests/src/org/chromium/mojo/bindings/ReadAndDispatchMessageTest.java", "javatests/src/org/chromium/mojo/bindings/RouterTest.java", "javatests/src/org/chromium/mojo/bindings/SerializationTest.java", "javatests/src/org/chromium/mojo/bindings/test/mojom/mojo/IntegrationTestInterfaceTestHelper.java", "javatests/src/org/chromium/mojo/bindings/ValidationTest.java", "javatests/src/org/chromium/mojo/bindings/ValidationTestUtil.java", "javatests/src/org/chromium/mojo/bindings/ValidationTestUtilTest.java", "javatests/src/org/chromium/mojo/HandleMock.java", "javatests/src/org/chromium/mojo/MojoTestCase.java", "javatests/src/org/chromium/mojo/TestUtils.java", "javatests/src/org/chromium/mojo/system/impl/CoreImplTest.java", ] deps = [ ":system_java", "//base:base_java", "//base:base_java_test_support", "//mojo/public/interfaces/bindings/tests:test_interfaces_java", "//mojo/public/java:bindings", "//mojo/public/java:system", ] } shared_library("mojo_java_unittests") { testonly = true sources = [ "javatests/init_library.cc", "javatests/mojo_test_case.cc", "javatests/mojo_test_case.h", "javatests/validation_test_util.cc", "javatests/validation_test_util.h", ] deps = [ ":jni_headers", ":libsystem_java", ":system_java_jni_headers", "//base", "//base/test/:test_support", "//build/config/sanitizers:deps", "//mojo/message_pump", "//mojo/public/cpp/bindings/tests:mojo_public_bindings_test_utils", "//mojo/public/cpp/test_support:test_utils", "//mojo/public/cpp/environment", "//third_party/mojo/src/mojo/edk/system", ] defines = [ "UNIT_TEST" ] } android_apk("mojo_test_apk") { testonly = true deps = [ ":mojo_javatests", ":mojo_java_unittests", ":system_java", "//base:base_java", "//mojo/public/java:bindings", "//mojo/public/interfaces/bindings/tests:test_interfaces", ] native_libs = [ "libmojo_java_unittests.so" ] apk_name = "MojoTest" android_manifest = "javatests/AndroidManifest.xml" }