Make sure app_idle_constants is set during setup.

Set app_idle_constants in NetPolicyTestsPreparer is not always successful(suspect timing issue).
Set app_idle_constants in AbstractRestrictBackgroundNetworkTestCase again to make sure.

Bug: 115393390
Test: atest com.android.cts.net.HostsideRestrictBackgroundNetworkTests#testAppIdleMetered_whenCharging

Change-Id: I41148bc7eea0825537133f0471ceefeb5b05d763
This commit is contained in:
Hui Yu
2019-04-19 16:39:11 -07:00
parent a0e4104e81
commit 022058ec74
2 changed files with 9 additions and 2 deletions

View File

@@ -153,7 +153,14 @@ abstract class AbstractRestrictBackgroundNetworkTestCase extends Instrumentation
Log.i(TAG, "Apps status on " + getName() + ":\n"
+ "\ttest app: uid=" + mMyUid + ", state=" + getProcessStateByUid(mMyUid) + "\n"
+ "\tapp2: uid=" + mUid + ", state=" + getProcessStateByUid(mUid));
executeShellCommand("settings get global app_idle_constants");
// app_idle_constants set in NetPolicyTestsPreparer.setUp() is not always sucessful (suspect
// timing issue), here we set it again to make sure.
final String appIdleConstants = "parole_duration=0,stable_charging_threshold=0";
executeShellCommand("settings put global app_idle_constants " + appIdleConstants);
final String currentConstants =
executeShellCommand("settings get global app_idle_constants");
assertEquals(appIdleConstants, currentConstants);
}
@Override

View File

@@ -48,7 +48,7 @@ public class NetPolicyTestsPreparer implements ITargetPreparer, ITargetCleaner {
}
private void setAppIdleConstants(String appIdleConstants) throws DeviceNotAvailableException {
executeCmd("settings put global app_idle_constants " + appIdleConstants);
executeCmd("settings put global app_idle_constants \"" + appIdleConstants + "\"");
}
private String getAppIdleConstants() throws DeviceNotAvailableException {