| <?xml version="1.0" encoding="utf-8"?><!-- |
| ~ Copyright (C) 2025 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 Concurrent Multi-Session IME tests"> |
| <object class="com.android.tradefed.testtype.suite.module.DeviceFeatureModuleController" |
| type="module_controller"> |
| <option name="required-feature" value="android.software.input_methods"/> |
| |
| <!-- Currently enabled to automotive only --> |
| <option name="required-feature" value="android.hardware.type.automotive" /> |
| </object> |
| <option name="test-suite-tag" value="apct" /> |
| |
| <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> |
| <option name="cleanup-apks" value="true" /> |
| <option name="force-install-mode" value="FULL" /> |
| <option name="test-file-name" value="ConcurrentMultiUserImeTest.apk" /> |
| <option name="test-file-name" value="CtsMockInputMethod.apk" /> |
| </target_preparer> |
| |
| <!-- RunOnSecondaryUserTargetPreparer must run after SuiteApkInstaller. --> |
| <target_preparer class="com.android.tradefed.targetprep.RunOnSecondaryUserTargetPreparer"> |
| <option name="start-background-user" value="true" /> |
| <option name="test-package-name" value="com.android.server.inputmethod.concurrentmultiuser" /> |
| <option name="test-package-name" value="com.android.cts.mockime" /> |
| </target_preparer> |
| |
| <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> |
| <option name="run-command" value="am compat enable ALLOW_TEST_API_ACCESS com.android.cts.mockime" /> |
| <option name="run-command" value="setprop debug.wm.disable_deprecated_abi_dialog 1" /> |
| <option name="run-command" value="settings put secure show_ime_with_hard_keyboard 1" /> |
| <!-- Create a place to store files for DumpOnFailure --> |
| <option name="run-command" value="mkdir -p /sdcard/DumpOnFailure" /> |
| <option name="teardown-command" |
| value="settings delete secure show_ime_with_hard_keyboard" /> |
| </target_preparer> |
| |
| <test class="com.android.tradefed.testtype.AndroidJUnitTest"> |
| <option name="package" value="com.android.server.inputmethod.concurrentmultiuser" /> |
| <option name="runtime-hint" value="1m0s" /> |
| <option name="device-listeners" value="android.tools.collectors.DefaultUITraceListener"/> |
| <option name="device-listeners" value="android.device.collectors.ScreenshotOnFailureCollector"/> |
| <!-- DefaultUITraceListener args --> |
| <option name="instrumentation-arg" key="skip_test_success_metrics" value="true"/> |
| <option name="instrumentation-arg" key="per_class" value="true"/> |
| </test> |
| |
| <!-- Collect the files from DumpOnFailure. --> |
| <metrics_collector class="com.android.tradefed.device.metric.FilePullerLogCollector"> |
| <option name="pull-pattern-keys" value="perfetto_file_path"/> |
| <option name="pull-pattern-keys" value="android.device.collectors.ScreenshotOnFailureCollector.*\.png"/> |
| <option name="directory-keys" value="/sdcard/DumpOnFailure" /> |
| <option name="collect-on-run-ended-only" value="true" /> |
| <option name="clean-up" value="true" /> |
| </metrics_collector> |
| </configuration> |