From 5dea0afd70995e658199fbe13be4171e7cc9595e Mon Sep 17 00:00:00 2001 From: Roshan Pius Date: Thu, 2 May 2019 09:18:16 -0700 Subject: [PATCH] WifiManagerTest: Allow NETWORK_SETTINGS for apps with BIND_QUICK_SETTINGS_TILE Bug: 130199973 Test: atest WifiManagerTest Change-Id: Ia31a56ba5fadb52fd724a7d213116cb0f1d0407a --- .../android/net/wifi/cts/WifiManagerTest.java | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/tests/cts/net/src/android/net/wifi/cts/WifiManagerTest.java b/tests/cts/net/src/android/net/wifi/cts/WifiManagerTest.java index cbc92aad85..8ea9afe588 100644 --- a/tests/cts/net/src/android/net/wifi/cts/WifiManagerTest.java +++ b/tests/cts/net/src/android/net/wifi/cts/WifiManagerTest.java @@ -747,19 +747,13 @@ public class WifiManagerTest extends AndroidTestCase { allowedUIDs.add(Process.NFC_UID); // only quick settings is allowed to bind to the BIND_QUICK_SETTINGS_TILE permission, using - // this fact to determined allowed package name for sysui - String validPkg = ""; - final List sysuiPackage = pm.getPackagesHoldingPermissions(new String[] { + // this fact to determined allowed package name for sysui. This is a signature permission, + // so allow any package with this permission. + final List sysuiPackages = pm.getPackagesHoldingPermissions(new String[] { android.Manifest.permission.BIND_QUICK_SETTINGS_TILE }, PackageManager.MATCH_UNINSTALLED_PACKAGES); - - if (sysuiPackage.size() > 1) { - fail("The BIND_QUICK_SETTINGS_TILE permission must only be held by one package"); - } - - if (sysuiPackage.size() == 1) { - validPkg = sysuiPackage.get(0).packageName; - allowedPackages.add(validPkg); + for (PackageInfo info : sysuiPackages) { + allowedPackages.add(info.packageName); } // the captive portal flow also currently holds the NETWORK_SETTINGS permission