package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

android_test {
    name: "BluetoothJavaUnitTests",
    defaults: ["bluetooth_errorprone_rules"],

    lint: {
        test: true,
    },
    sdk_version: "module_current",
    min_sdk_version: "36",
    target_sdk_version: "current",
    libs: [
        "android.test.base.stubs",
        "android.test.mock.stubs",
        "android.test.runner.stubs",
        "framework-annotations-lib",
        "framework-configinfrastructure.stubs.module_lib",
        "framework-connectivity.stubs.module_lib",
        "framework-location.stubs.module_lib",
        "framework-mediaprovider.stubs.module_lib",
        "framework-tethering.stubs.module_lib",
        "javax.obex.stubs",
        "libprotobuf-java-micro",
    ],

    static_libs: [
        "BluetoothLib",
        "PlatformProperties",
        "TestParameterInjector",
        "android.media.audio-aconfig-exported-java",
        "androidx.media_media",
        "androidx.room_room-migration",
        "androidx.room_room-runtime",
        "androidx.room_room-testing",
        "androidx.test.espresso.intents",
        "androidx.test.ext.junit",
        "androidx.test.ext.truth",
        "androidx.test.rules",
        "androidx.test.uiautomator_uiautomator",
        "bluetooth-common-java-tests",
        "bluetooth_flags_java_lib",
        "com.android.sysprop.bluetooth",
        "flag-junit",
        "framework-bluetooth-pre-jarjar",
        "gson",
        "guava-android-testlib",
        "mmslib",
        "mockito-kotlin2",
        "mockito-target-extended",
        "modules-utils-handlerexecutor",
        "modules-utils-statemachine",
        "platform-parametric-runner-lib",
        "platform-test-annotations",
        "truth",
    ],

    // these are needed for Extended Mockito
    jni_libs: [
        "libdexmakerjvmtiagent",
        "libstaticjvmtiagent",
    ],

    jarjar_rules: ":bluetooth-jarjar-rules-tests",
    asset_dirs: ["src/com/android/bluetooth/btservice/storage/schemas"],

    // Include all test java and kotlin files.
    srcs: [
        "src/**/*.java",
        "src/**/*.kt",
    ],
    jacoco: {
        include_filter: [
            "android.bluetooth.**",
            "com.android.bluetooth.**",
            "com.android.server.bluetooth.**",
        ],
        exclude_filter: [],
    },

    test_suites: [
        "automotive-general-tests",
        "general-tests",
        "mts-bluetooth",
        "mts-bt",
    ],
}

// TODO delete this filegroup to replace by a shadow looper
filegroup {
    name: "bluetooth_test_looper",
    srcs: ["src/com/android/bluetooth/TestLooper.java"],
    visibility: ["//packages/modules/Bluetooth/android/app/tests:__subpackages__"],
}
