<?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 CTS Sensor Manager test cases">
    <option name="test-suite-tag" value="cts"/>
    <option name="config-descriptor:metadata" key="component" value="framework"/>
    <option name="config-descriptor:metadata" key="parameter" value="not_multi_abi"/>
    <option name="config-descriptor:metadata" key="parameter" value="instant_app"/>
    <option name="config-descriptor:metadata" key="parameter" value="secondary_user"/>

    <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
        <option name="cleanup-apks" value="true"/>

        <option name="test-file-name" value="CtsSensorRatePermissionReturnedRateInfo.apk"/>
        <option name="test-file-name" value="CtsSensorRatePermissionDirectReportAPI30.apk"/>
        <option name="test-file-name" value="CtsSensorRatePermissionDirectReportAPI31.apk"/>
        <option name="test-file-name" value="CtsSensorRatePermissionEventConnectionAPI30.apk"/>
        <option name="test-file-name" value="CtsSensorRatePermissionEventConnectionAPI31.apk"/>
        <option name="test-file-name" value="CtsSensorRatePermissionDebuggableAPI31.apk"/>
    </target_preparer>

    <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer">
        <option name="run-command" value="dumpsys sensorservice restrict .cts" />
        <option name="run-command" value="cmd sensor_privacy disable 0 microphone" />
        <option name="teardown-command" value="dumpsys sensorservice enable" />
        <option name="teardown-command" value="cmd sensor_privacy reset 0 microphone" />
    </target_preparer>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
        <option name="package" value="android.sensorratepermission.cts.returnedrateinfo"/>
        <option name="class" value="android.sensorratepermission.cts.returnedrateinfo.ReturnedRateInfoTest"/>
    </test>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
        <option name="package" value="android.sensorratepermission.cts.directreportapi30"/>
        <option name="class" value="android.sensorratepermission.cts.directreportapi30.DirectReportAPI30Test"/>
    </test>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
        <option name="package" value="android.sensorratepermission.cts.directreportapi31"/>
        <option name="class" value="android.sensorratepermission.cts.directreportapi31.DirectReportAPI31Test"/>
    </test>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
        <option name="package" value="android.sensorratepermission.cts.eventconnectionapi31"/>
        <option name="class" value="android.sensorratepermission.cts.eventconnectionapi31.EventConnectionAPI31Test"/>
    </test>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
        <option name="package" value="android.sensorratepermission.cts.eventconnectionapi30"/>
        <option name="class" value="android.sensorratepermission.cts.eventconnectionapi30.EventConnectionAPI30Test"/>
    </test>

    <test class="com.android.tradefed.testtype.AndroidJUnitTest">
        <option name="package" value="android.sensorratepermission.cts.debuggableapi31"/>
        <option name="class" value="android.sensorratepermission.cts.debuggableapi31.DebuggableAPI31Test"/>
    </test>
</configuration>

