1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2017 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16<!--
17 ! Test that APKs with targetSdkVersion <= 29 have access to the android.test.base APIs by default.
18 !
19 ! The test name is 29 because that was the initial targetSdkVersion where android.test.base was no
20 ! longer available on the bootclasspath. Unfortunately, the changes were not ready in time and so
21 ! it was eventually removed from 29. The test has not been renamed.
22 !-->
23<configuration description="Config for CTS Android Test Base 29 API Signature test cases">
24    <option name="test-suite-tag" value="cts" />
25    <option name="config-descriptor:metadata" key="component" value="systems" />
26    <option name="config-descriptor:metadata" key="parameter" value="instant_app" />
27    <option name="config-descriptor:metadata" key="parameter" value="not_multi_abi" />
28    <option name="config-descriptor:metadata" key="parameter" value="secondary_user" />
29    <option name="config-descriptor:metadata" key="parameter" value="no_foldable_states" />
30    <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
31        <option name="cleanup-apks" value="true" />
32        <option name="test-file-name" value="CtsAndroidTestBase29ApiSignatureTestCases.apk" />
33    </target_preparer>
34    <test class="com.android.tradefed.testtype.AndroidJUnitTest" >
35        <option name="package" value="android.signature.cts.api.android_test_base_29" />
36        <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" />
37        <option name="class" value="android.signature.cts.api.api29.test.SignatureTest" />
38        <!--
39         ! android.test.base classes must be accessible to this test as this test's targetSdkVersion
40         ! is 29 which provided the classes by default on the bootclasspath.
41         !-->
42        <option name="instrumentation-arg" key="expected-api-files" value="android-test-base-current.api.gz" />
43        <!--
44         ! android.test.mock and android.test.runner classes must not be accessible to this test as
45         ! they are only provided when specifically requested using a <uses-library> element in the
46         ! manifest.
47         !-->
48        <option name="instrumentation-arg" key="unexpected-api-files" value="android-test-runner-current.api.gz,android-test-mock-current.api.gz" />
49        <option name="runtime-hint" value="5s" />
50        <!-- Disable hidden API checks (http://b/171459260). -->
51        <option name="hidden-api-checks" value="false" />
52    </test>
53</configuration>
54