Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Android.bp 4.60 KiB
// Copyright (C) 2008 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

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

java_defaults {
    name: "CtsNetTestCasesDefaults",
    defaults: [
        "cts_defaults",
        "framework-connectivity-test-defaults",
    ],

    // Include both the 32 and 64 bit versions
    compile_multilib: "both",

    libs: [
        "voip-common",
        "android.test.base",
    ],

    jni_libs: [
        "libcts_jni",
        "libnativedns_jni",
        "libnativemultinetwork_jni",
        "libnativehelper_compat_libc++",
    ],

    srcs: [
        "src/**/*.java",
        "src/**/*.kt",
        ":ike-aes-xcbc",
    ],
    jarjar_rules: "jarjar-rules-shared.txt",
    static_libs: [
        "bouncycastle-unbundled",
        "FrameworksNetCommonTests",
        "core-tests-support",
        "cts-net-utils",
        "CtsNetTestsNonUpdatableLib",
        "ctstestrunner-axt",
        "junit",
        "junit-params",
        "modules-utils-build",
        "net-utils-framework-common",
        "truth",
        "TetheringIntegrationTestsBaseLib",
    ],

    // uncomment when b/13249961 is fixed
    // sdk_version: "current",
    platform_apis: true,
    data: [":ConnectivityTestPreparer"],
    per_testcase_directory: true,
    host_required: ["net-tests-utils-host-common"],
    test_config_template: "AndroidTestTemplate.xml",
}
// Networking CTS tests for development and release. These tests always target the platform SDK
// version, and are subject to all the restrictions appropriate to that version. Before SDK
// finalization, these tests have a min_sdk_version of 10000, and cannot be installed on release
// devices.
android_test {
    name: "CtsNetTestCases",
    defaults: [
        "CtsNetTestCasesDefaults",
        "ConnectivityNextEnableDefaults",
    ],
    static_libs: [
        "DhcpPacketLib",
        "NetworkStackApiCurrentShims",
    ],
    test_suites: [
        "cts",
        "general-tests",
    ],
}

java_defaults {
    name: "CtsNetTestCasesApiStableDefaults",
    // TODO: CTS should not depend on the entirety of the networkstack code.
    static_libs: [
        "DhcpPacketLib",
        "NetworkStackApiStableShims",
    ],
    jni_uses_sdk_apis: true,
    min_sdk_version: "30",
}

// Networking CTS tests that target the latest released SDK. These tests can be installed on release
// devices at any point in the Android release cycle and are useful for qualifying mainline modules
// on release devices.
android_test {
    name: "CtsNetTestCasesLatestSdk",
    defaults: [
        "ConnectivityTestsLatestSdkDefaults",
        "CtsNetTestCasesDefaults",
        "CtsNetTestCasesApiStableDefaults",
    ],
    test_suites: [
        "general-tests",
        "mts-dnsresolver",
        "mts-networking",
        "mts-tethering",
        "mts-wifi",
    ],
}

java_defaults {
    name: "CtsNetTestCasesMaxTargetSdkDefaults",
    defaults: [
        "CtsNetTestCasesDefaults",
        "CtsNetTestCasesApiStableDefaults",
    ],
    test_suites: [
        "cts",
        "general-tests",
        "mts-tethering",
    ],
}

android_test {
    name: "CtsNetTestCasesMaxTargetSdk33", // Must match CtsNetTestCasesMaxTargetSdk33 annotation.
    defaults: ["CtsNetTestCasesMaxTargetSdkDefaults"],
    target_sdk_version: "33",
    package_name: "android.net.cts.maxtargetsdk33",
    instrumentation_target_package: "android.net.cts.maxtargetsdk33",
}

android_test {
    name: "CtsNetTestCasesMaxTargetSdk31", // Must match CtsNetTestCasesMaxTargetSdk31 annotation.
    defaults: ["CtsNetTestCasesMaxTargetSdkDefaults"],
    target_sdk_version: "31",
    package_name: "android.net.cts.maxtargetsdk31", // CTS package names must be unique.
    instrumentation_target_package: "android.net.cts.maxtargetsdk31",
}

android_test {
    name: "CtsNetTestCasesMaxTargetSdk30", // Must match CtsNetTestCasesMaxTargetSdk30 annotation.
    defaults: ["CtsNetTestCasesMaxTargetSdkDefaults"],
    target_sdk_version: "30",
    package_name: "android.net.cts.maxtargetsdk30", // CTS package names must be unique.
    instrumentation_target_package: "android.net.cts.maxtargetsdk30",
}