Arthur Eubanks 1ea7ed0278 Add integration tests for BackgroundDexOptService
Add three tests:
1. Under normal conditions, check that dexopt upgrades test app to
$(getprop pm.dexopt.bg-dexopt).
2. Under low storage conditions and package is unused, check
that dexopt downgrades test app to $(getprop pm.dexopt.inactive).
3. Under low storage conditions and package is recently used, check
that dexopt upgrades test app to $(getprop pm.dexopt.bg-dexopt).

Test: atest -v BackgroundDexOptServiceIntegrationTests
BUG: 64807719

Change-Id: Iaa50d5120ea0255b38226bda0452e7e47f1ff5d0
2017-12-01 23:32:39 +00:00

56 lines
2.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2017 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 BackgroundDexOptService Integration Tests">
<!--DeviceSetup should go before TimeSetter because it stops automatic update of time-->
<target_preparer
class="com.android.tradefed.targetprep.DeviceSetup">
<option name="auto-update-time" value="OFF"/>
<option name="auto-update-timezone" value="OFF"/>
<option name="set-property" key="pm.dexopt.downgrade_after_inactive_days" value="2"/>
<option name="set-property" key="pm.dexopt.disable_bg_dexopt" value="true"/>
<option name="set-property" key="pm.dexopt.inactive" value="verify"/>
<option name="set-property" key="pm.dexopt.bg-dexopt" value="speed"/>
<option name="restore-settings" value="true"/>
<option name="restore-properties" value="true"/>
</target_preparer>
<!--Test app needs to be installed when we change its settings below-->
<target_preparer class="com.android.tradefed.targetprep.TestAppInstallSetup">
<option name="test-file-name" value="BackgroundDexOptServiceIntegrationTests.apk"/>
<option name="cleanup-apks" value="true"/>
</target_preparer>
<target_preparer class="com.android.tradefed.targetprep.SetPackagesRecentlyUsed">
<option name="package-recently-used-time" value="0d"/>
<option name="package-recently-used-name" value="com.android.frameworks.bgdexopttest"/>
</target_preparer>
<target_preparer class="com.android.tradefed.targetprep.RestartSystemServerTargetPreparer"/>
<target_preparer class="com.android.tradefed.targetprep.DeviceStorageFiller">
<!--32GB-->
<!--necessary because a package cannot create a file larger than 100GB-->
<option name="free-bytes" value="34359738368"/>
</target_preparer>
<option name="test-suite-tag" value="apct"/>
<option name="test-tag" value="BackgroundDexOptServiceIntegrationTests"/>
<test class="com.android.tradefed.testtype.AndroidJUnitTest">
<option name="package" value="com.android.frameworks.bgdexopttest"/>
<option name="runner" value="android.support.test.runner.AndroidJUnitRunner"/>
</test>
</configuration>