Merge "Added tests for battery save mode on non-metered networks." into nyc-dev

am: c6a9515d7c

* commit 'c6a9515d7cd83cf52ac2789761e84444366b60d8':
  Added tests for battery save mode on non-metered networks.
This commit is contained in:
Felipe Leme
2016-03-09 23:08:48 +00:00
committed by android-build-merger
5 changed files with 74 additions and 2 deletions

View File

@@ -87,8 +87,6 @@ abstract class AbstractRestrictBackgroundNetworkTestCase extends Instrumentation
.getPackageInfo(mContext.getPackageName(), 0).applicationInfo.uid;
Log.d(TAG, "UIDS: test app=" + myUid + ", app2=" + mUid);
setMeteredNetwork();
}
@Override

View File

@@ -0,0 +1,56 @@
/*
* Copyright (C) 2016 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.
*/
package com.android.cts.net.hostside;
//TODO: move this and BatterySaverModeTest's logic into a common superclass
public class BatterySaverModeNonMeteredTest extends AbstractRestrictBackgroundNetworkTestCase {
@Override
public void setUp() throws Exception {
super.setUp();
setPowerSaveMode(false);
assertPowerSaveModeWhitelist(TEST_APP2_PKG, false); // Sanity check
registerApp2BroadcastReceiver();
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
setPowerSaveMode(false);
}
public void testBackgroundNetworkAccess_enabled() throws Exception {
setPowerSaveMode(true);
assertBackgroundNetworkAccess(false);
}
public void testBackgroundNetworkAccess_whitelisted() throws Exception {
setPowerSaveMode(true);
assertBackgroundNetworkAccess(false);
addPowerSaveModeWhitelist(TEST_APP2_PKG);
assertBackgroundNetworkAccess(true);
removePowerSaveModeWhitelist(TEST_APP2_PKG);
assertBackgroundNetworkAccess(false);
}
public void testBackgroundNetworkAccess_disabled() throws Exception {
setPowerSaveMode(false);
assertBackgroundNetworkAccess(true);
}
}

View File

@@ -16,12 +16,14 @@
package com.android.cts.net.hostside;
//TODO: move this and BatterySaverModeNonMeteredTest's logic into a common superclass
public class BatterySaverModeTest extends AbstractRestrictBackgroundNetworkTestCase {
@Override
public void setUp() throws Exception {
super.setUp();
setMeteredNetwork();
setPowerSaveMode(false);
assertPowerSaveModeWhitelist(TEST_APP2_PKG, false); // Sanity check
registerApp2BroadcastReceiver();

View File

@@ -26,6 +26,7 @@ public class DataSaverModeTest extends AbstractRestrictBackgroundNetworkTestCase
public void setUp() throws Exception {
super.setUp();
setMeteredNetwork();
setRestrictBackground(false);
registerApp2BroadcastReceiver();
}

View File

@@ -100,6 +100,21 @@ public class HostsideRestrictBackgroundNetworkTests extends HostsideNetworkTestC
assertPowerSaveModeWhitelist(TEST_PKG, false);
}
public void testBatteryBatterySaverModeNonMeteredTest_disabled() throws Exception {
runDeviceTests(TEST_PKG, TEST_PKG + ".BatterySaverModeNonMeteredTest",
"testBackgroundNetworkAccess_disabled");
}
public void testBatteryBatterySaverModeNonMeteredTest_whitelisted() throws Exception {
runDeviceTests(TEST_PKG, TEST_PKG + ".BatterySaverModeNonMeteredTest",
"testBackgroundNetworkAccess_whitelisted");
}
public void testBatteryBatterySaverModeNonMeteredTest_enabled() throws Exception {
runDeviceTests(TEST_PKG, TEST_PKG + ".BatterySaverModeNonMeteredTest",
"testBackgroundNetworkAccess_enabled");
}
private void assertRestrictBackgroundWhitelist(int uid, boolean expected) throws Exception {
final int max_tries = 5;
boolean actual = false;