Merge "Assert whitelists are revoked on uninstall." into nyc-dev

am: cd8e99563b

* commit 'cd8e99563b4accd3162bff1f002468971f4dc771':
  Assert whitelists are revoked on uninstall.

Change-Id: Ic91c283812b15a0db5ca26dc771c25f5aa8603a6
This commit is contained in:
Felipe Leme
2016-05-06 17:40:49 +00:00
committed by android-build-merger
2 changed files with 32 additions and 13 deletions

View File

@@ -73,7 +73,11 @@ public class DataSaverModeTest extends AbstractRestrictBackgroundNetworkTestCase
addRestrictBackgroundWhitelist(mUid);
assertRestrictBackgroundChangedReceived(2);
assertRestrictBackgroundStatus(RESTRICT_BACKGROUND_STATUS_WHITELISTED);
}
removeRestrictBackgroundWhitelist(mUid);
assertRestrictBackgroundChangedReceived(3);
assertRestrictBackgroundStatus(RESTRICT_BACKGROUND_STATUS_ENABLED);
}
public void testGetRestrictBackgroundStatus_enabled() throws Exception {
setRestrictBackground(true);

View File

@@ -60,15 +60,17 @@ public class HostsideRestrictBackgroundNetworkTests extends HostsideNetworkTestC
}
public void testDataSaverMode_reinstall() throws Exception {
final int oldUid = getUid(TEST_PKG);
testDataSaverMode_whitelisted();
final int oldUid = getUid(TEST_APP2_PKG);
uninstallPackage(TEST_PKG, true);
assertPackageUninstalled(TEST_PKG);
// Make sure whitelist is revoked when package is removed
addRestrictBackgroundWhitelist(oldUid);
uninstallPackage(TEST_APP2_PKG, true);
assertPackageUninstalled(TEST_APP2_PKG);
assertRestrictBackgroundWhitelist(oldUid, false);
installPackage(TEST_APK);
final int newUid = getUid(TEST_PKG);
installPackage(TEST_APP2_APK);
final int newUid = getUid(TEST_APP2_PKG);
assertRestrictBackgroundWhitelist(oldUid, false);
assertRestrictBackgroundWhitelist(newUid, false);
}
@@ -94,14 +96,14 @@ public class HostsideRestrictBackgroundNetworkTests extends HostsideNetworkTestC
}
public void testBatterySaverMode_reinstall() throws Exception {
testBatterySaverMode_whitelisted();
addPowerSaveModeWhitelist(TEST_APP2_PKG);
uninstallPackage(TEST_PKG, true);
assertPackageUninstalled(TEST_PKG);
assertPowerSaveModeWhitelist(TEST_PKG, false);
uninstallPackage(TEST_APP2_PKG, true);
assertPackageUninstalled(TEST_APP2_PKG);
assertPowerSaveModeWhitelist(TEST_APP2_PKG, false);
installPackage(TEST_APK);
assertPowerSaveModeWhitelist(TEST_PKG, false);
installPackage(TEST_APP2_APK);
assertPowerSaveModeWhitelist(TEST_APP2_PKG, false);
}
public void testBatterySaverModeNonMetered_disabled() throws Exception {
@@ -160,4 +162,17 @@ public class HostsideRestrictBackgroundNetworkTests extends HostsideNetworkTestC
fail("Command '" + command + "' did not return '" + expectedResult + "' after " + maxTries
+ " attempts");
}
protected void addRestrictBackgroundWhitelist(int uid) throws Exception {
runCommand("cmd netpolicy add restrict-background-whitelist " + uid);
assertRestrictBackgroundWhitelist(uid, true);
}
private void addPowerSaveModeWhitelist(String packageName) throws Exception {
Log.i(TAG, "Adding package " + packageName + " to power-save-mode whitelist");
// TODO: currently the power-save mode is behaving like idle, but once it changes, we'll
// need to use netpolicy for whitelisting
runCommand("dumpsys deviceidle whitelist +" + packageName);
assertPowerSaveModeWhitelist(packageName, true); // Sanity check
}
}