//########################################################################
// Build FrameworksUiServicesTests package
//########################################################################

package {
    // See: http://go/android-license-faq
    // A large-scale-change added 'default_applicable_licenses' to import
    // all of the 'license_kinds' from "frameworks_base_license"
    // to get the below license kinds:
    //   SPDX-license-identifier-Apache-2.0
    default_applicable_licenses: ["frameworks_base_license"],
}

android_test {
    name: "FrameworksUiServicesTests",

    // Include test java files
    srcs: [
        "src/**/*.java",
    ],

    static_libs: [
        "frameworks-base-testutils",
        "services.accessibility",
        "services.core",
        "services.devicepolicy",
        "services.net",
        "services.usage",
        "service-permission.stubs.system_server",
        "guava",
        "androidx.test.rules",
        "hamcrest-library",
        "mockito-target-inline-minus-junit4",
        "platform-compat-test-rules",
        "platform-test-annotations",
        "platformprotosnano",
        "statsdprotolite",
        "StatsdTestUtils",
        "hamcrest-library",
        "servicestests-utils",
        "testables",
        "truth",
        "TestParameterInjector",
        // TODO: remove once Android migrates to JUnit 4.12,
        // which provides assertThrows
        "testng",
        "flag-junit",
        "notification_flags_lib",
        "platform-test-rules",
        "SettingsLib",
    ],

    libs: [
        "android.test.runner",
        "android.test.base",
        "android.test.mock",
    ],

    dxflags: ["--multi-dex"],

    platform_apis: true,

    test_suites: [
        "device-tests",
        "automotive-tests",
    ],

    certificate: "platform",

    compile_multilib: "both",

    // These are not normally accessible from apps so they must be explicitly included.
    jni_libs: [
        "libdexmakerjvmtiagent",
        "libmultiplejvmtiagentsinterferenceagent",
        "libbase",
        "libbinder",
        "libc++",
        "libcutils",
        "liblog",
        "liblzma",
        "libnativehelper",
        "libui",
        "libunwindstack",
        "libutils",
        "netd_aidl_interface-V5-cpp",
    ],

    // Required for TestParameterInjector
    javacflags: ["-parameters"],
}
