| <?xml version="1.0" encoding="utf-8"?> |
| <!-- Copyright (C) 2018 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="Runs ApexTestCases"> |
| <option name="test-suite-tag" value="apct" /> |
| <option name="test-suite-tag" value="apct-native" /> |
| <target_preparer class="com.android.tradefed.targetprep.PushFilePreparer"> |
| <option name="cleanup" value="true" /> |
| <!-- Note: despite how this line reads, it will push the complete testcase directory, thus |
| all apexes that are required by the blueprint's data[] tag. --> |
| <option name="push" value="ApexTestCases->/data/local/tmp/ApexTestCases" /> |
| </target_preparer> |
| |
| <!-- The test runs as root to prepare the temporary directory, make selinux adjustments |
| and so on to provide files that apexd can consume. This is done to avoid dependencies |
| on higher levels (e.g., PackageInstaller). --> |
| <target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer" /> |
| |
| <target_preparer class="com.android.tradefed.targetprep.PushFilePreparer"> |
| <option name="cleanup" value="true" /> |
| <option name="remount-system" value="true" /> |
| <option name="push" value="apex.apexd_test.apex->/system_ext/apex/apex.apexd_test.apex" /> |
| <option name="push" value="apex.apexd_test_different_app.apex->/system_ext/apex/apex.apexd_test_different_app.apex" /> |
| <option name="push" value="apex.apexd_test_postinstall.apex->/system_ext/apex/apex.apexd_test_postinstall.apex" /> |
| <option name="push" value="apex.apexd_test_preinstall.apex->/system_ext/apex/apex.apexd_test_preinstall.apex" /> |
| </target_preparer> |
| |
| <!-- system_server might still hold a reference to apexservice. This means that apexd is still |
| running, and test apexes pushed in the PushFilePreparer above are not yet scanned. |
| One way to solve this is to reboot a device, but that would significantly increase |
| execution of this test module. Instead, force a GC in system_server by sending kill -10. --> |
| <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> |
| <option name="run-command" value="shell kill -10 $(pidof system_server)" /> |
| <option name="teardown-command" value="shell kill -10 $(pidof system_server)" /> |
| </target_preparer> |
| |
| <test class="com.android.tradefed.testtype.GTest" > |
| <!-- Note: despite how these lines read, the test will run nicely separated out |
| of a subfolder. --> |
| <option name="native-test-device-path" value="/data/local/tmp" /> |
| <option name="module-name" value="ApexTestCases" /> |
| </test> |
| </configuration> |