| <?xml version="1.0" encoding="utf-8"?> | |
| <!-- Copyright (C) 2021 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. | |
| --> | |
| <configuration description="Config for libnativeloader e2e test cases"> | |
| <option name="test-suite-tag" value="libnativeloader_e2e_tests" /> | |
| <option name="test-suite-tag" value="apct" /> | |
| <option name="config-descriptor:metadata" key="mainline-param" value="com.google.android.art.apex" /> | |
| <option name="config-descriptor:metadata" key="mainline-param" value="com.android.art.apex" /> | |
| <target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer" /> | |
| <target_preparer class="com.android.tradefed.targetprep.PushFilePreparer"> | |
| <!-- We push all files in LibnativeloaderTest.java, but use this | |
| preparer to make partitions writable. That since remounting may | |
| require a device reboot, and then it's important that the | |
| `setenforce 0` from DisableSELinuxTargetPreparer occurs after that. --> | |
| <option name="remount-system" value="true" /> | |
| <option name="remount-vendor" value="true" /> | |
| </target_preparer> | |
| <!-- Vendor native libraries aren't accessible by any apps by sepolicy | |
| rules. For that they need to be labelled same_process_hal_file in a | |
| vendor specific file_contexts file (see | |
| https://source.android.com/docs/core/permissions/namespaces_libraries#adding-additional-native-libraries). | |
| To avoid setting that up to test loading libvendor_private*.so, disable | |
| sepolicy checks while running the tests. It's libnativeloader logic we | |
| want to test here. --> | |
| <target_preparer class="com.android.tradefed.targetprep.DisableSELinuxTargetPreparer"/> | |
| <test class="com.android.tradefed.testtype.HostTest" > | |
| <option name="jar" value="libnativeloader_e2e_tests.jar" /> | |
| </test> | |
| <!-- When this test is run in a Mainline context (e.g. with `mts-tradefed`), only enable it if | |
| one of the Mainline modules below is present on the device used for testing. --> | |
| <object type="module_controller" class="com.android.tradefed.testtype.suite.module.MainlineTestModuleController"> | |
| <!-- ART Mainline Module (internal version). --> | |
| <option name="mainline-module-package-name" value="com.google.android.art" /> | |
| <!-- ART Mainline Module (external (AOSP) version). --> | |
| <option name="mainline-module-package-name" value="com.android.art" /> | |
| </object> | |
| <!-- Only run tests if the device under test is SDK version 31 (Android 12) or above. --> | |
| <object type="module_controller" class="com.android.tradefed.testtype.suite.module.Sdk31ModuleController" /> | |
| </configuration> |