summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPhilip P. Moltmann <moltmann@google.com>2019-10-04 09:19:51 -0700
committerPhilip P. Moltmann <moltmann@google.com>2019-11-08 14:50:46 -0800
commitb380b4739da60242500d9bede8b18a802bd62fda (patch)
tree92664adb55d0731d95807d310aab90c0d97b41f6 /tests
parentd8b3d7c285b24a1b1e22721631c7bdb3c31ef3e1 (diff)
Pipe through featureId from app-context to wifi location checking code.
Bug: 136595429 Test: atest FrameworksWifiTests Change-Id: I3f4bde2e8f74a1a572acbe90e6ac7eaff13db893
Diffstat (limited to 'tests')
-rw-r--r--tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java11
-rw-r--r--tests/wifitests/src/com/android/server/wifi/ScoredNetworkEvaluatorTest.java8
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java198
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java126
-rw-r--r--tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java16
-rw-r--r--tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java16
-rw-r--r--tests/wifitests/src/com/android/server/wifi/aware/WifiAwareServiceImplTest.java33
-rw-r--r--tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java201
-rw-r--r--tests/wifitests/src/com/android/server/wifi/p2p/WifiP2pServiceImplTest.java423
-rw-r--r--tests/wifitests/src/com/android/server/wifi/rtt/RttServiceImplTest.java80
-rw-r--r--tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java38
-rw-r--r--tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java112
12 files changed, 712 insertions, 550 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java b/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java
index c636bc566..e03d932df 100644
--- a/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java
@@ -54,6 +54,7 @@ public class NetworkSuggestionStoreDataTest extends WifiBaseTest {
private static final int TEST_UID_2 = 14536;
private static final String TEST_PACKAGE_NAME_1 = "com.android.test.1";
private static final String TEST_PACKAGE_NAME_2 = "com.android.test.2";
+ private static final String TEST_FEATURE_ID = "com.android.feature.1";
private static final String TEST_CORRUPT_DATA_INVALID_SSID =
"<NetworkSuggestionPerApp>\n"
+ "<string name=\"SuggestorPackageName\">com.android.test.1</string>\n"
@@ -153,7 +154,7 @@ public class NetworkSuggestionStoreDataTest extends WifiBaseTest {
public void serializeDeserializeSingleNetworkSuggestionFromSingleApp() throws Exception {
Map<String, PerAppInfo> networkSuggestionsMap = new HashMap<>();
- PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_NAME_1);
+ PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_NAME_1, TEST_FEATURE_ID);
WifiConfiguration configuration = WifiConfigurationTestUtil.createEapNetwork();
configuration.enterpriseConfig =
@@ -187,7 +188,7 @@ public class NetworkSuggestionStoreDataTest extends WifiBaseTest {
public void serializeDeserializeSingleNetworkSuggestionFromMultipleApps() throws Exception {
Map<String, PerAppInfo> networkSuggestionsMap = new HashMap<>();
- PerAppInfo appInfo1 = new PerAppInfo(TEST_PACKAGE_NAME_1);
+ PerAppInfo appInfo1 = new PerAppInfo(TEST_PACKAGE_NAME_1, TEST_FEATURE_ID);
WifiNetworkSuggestion networkSuggestion1 = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, false, false, TEST_UID_1,
TEST_PACKAGE_NAME_1);
@@ -196,7 +197,7 @@ public class NetworkSuggestionStoreDataTest extends WifiBaseTest {
ExtendedWifiNetworkSuggestion.fromWns(networkSuggestion1, appInfo1));
networkSuggestionsMap.put(TEST_PACKAGE_NAME_1, appInfo1);
- PerAppInfo appInfo2 = new PerAppInfo(TEST_PACKAGE_NAME_2);
+ PerAppInfo appInfo2 = new PerAppInfo(TEST_PACKAGE_NAME_2, TEST_FEATURE_ID);
WifiNetworkSuggestion networkSuggestion2 = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, true, false, TEST_UID_2,
TEST_PACKAGE_NAME_2);
@@ -215,7 +216,7 @@ public class NetworkSuggestionStoreDataTest extends WifiBaseTest {
public void serializeDeserializeMultipleNetworkSuggestionFromMultipleApps() throws Exception {
Map<String, PerAppInfo> networkSuggestionsMap = new HashMap<>();
- PerAppInfo appInfo1 = new PerAppInfo(TEST_PACKAGE_NAME_1);
+ PerAppInfo appInfo1 = new PerAppInfo(TEST_PACKAGE_NAME_1, TEST_FEATURE_ID);
WifiNetworkSuggestion networkSuggestion1 = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, false, true, TEST_UID_1,
TEST_PACKAGE_NAME_1);
@@ -229,7 +230,7 @@ public class NetworkSuggestionStoreDataTest extends WifiBaseTest {
ExtendedWifiNetworkSuggestion.fromWns(networkSuggestion2, appInfo1));
networkSuggestionsMap.put(TEST_PACKAGE_NAME_1, appInfo1);
- PerAppInfo appInfo2 = new PerAppInfo(TEST_PACKAGE_NAME_2);
+ PerAppInfo appInfo2 = new PerAppInfo(TEST_PACKAGE_NAME_2, TEST_FEATURE_ID);
WifiNetworkSuggestion networkSuggestion3 = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, true, false, TEST_UID_2,
TEST_PACKAGE_NAME_2);
diff --git a/tests/wifitests/src/com/android/server/wifi/ScoredNetworkEvaluatorTest.java b/tests/wifitests/src/com/android/server/wifi/ScoredNetworkEvaluatorTest.java
index 7c60fead0..bff45c99b 100644
--- a/tests/wifitests/src/com/android/server/wifi/ScoredNetworkEvaluatorTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/ScoredNetworkEvaluatorTest.java
@@ -237,7 +237,7 @@ public class ScoredNetworkEvaluatorTest extends WifiBaseTest {
int[] levels = {mThresholdQualifiedRssi2G + 8, mThresholdQualifiedRssi2G + 10};
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- any(), anyInt());
+ any(), any(), anyInt(), any());
ScanDetailsAndWifiConfigs scanDetailsAndConfigs = WifiNetworkSelectorTestUtil
.setupScanDetailsAndConfigStore(
@@ -247,7 +247,7 @@ public class ScoredNetworkEvaluatorTest extends WifiBaseTest {
verify(mNetworkScoreManager, never()).requestScores(any());
verify(mWifiPermissionsUtil).enforceCanAccessScanResults(
- eq(TEST_PACKAGE_NAME), eq(TEST_UID));
+ eq(TEST_PACKAGE_NAME), eq(null), eq(TEST_UID), nullable(String.class));
}
@Test
@@ -260,7 +260,7 @@ public class ScoredNetworkEvaluatorTest extends WifiBaseTest {
int[] levels = {mThresholdQualifiedRssi2G + 8, mThresholdQualifiedRssi2G + 10};
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- any(), anyInt());
+ any(), any(), anyInt(), any());
ScanDetailsAndWifiConfigs scanDetailsAndConfigs = WifiNetworkSelectorTestUtil
.setupScanDetailsAndConfigStore(
@@ -270,7 +270,7 @@ public class ScoredNetworkEvaluatorTest extends WifiBaseTest {
verify(mNetworkScoreManager, never()).requestScores(any());
verify(mWifiPermissionsUtil).enforceCanAccessScanResults(
- eq(TEST_PACKAGE_NAME), eq(TEST_UID));
+ eq(TEST_PACKAGE_NAME), eq(null), eq(TEST_UID), nullable(String.class));
}
/**
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java b/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java
index faccb1aec..02ea0e3c5 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java
@@ -89,6 +89,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
private static final String TEST_PACKAGE_2 = "com.test54321";
private static final String TEST_APP_NAME_1 = "test12345";
private static final String TEST_APP_NAME_2 = "test54321";
+ private static final String TEST_FEATURE = "testFeature";
private static final String TEST_BSSID = "00:11:22:33:44:55";
private static final String TEST_FQDN = "FQDN";
private static final int TEST_UID_1 = 5667;
@@ -217,10 +218,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
anyInt(), anyString(), eq(true))).thenReturn(true);
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
verify(mPasspointManager).addOrUpdateProvider(
passpointConfiguration, TEST_UID_2, TEST_PACKAGE_2, true);
@@ -271,10 +272,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
anyInt(), anyString(), eq(true))).thenReturn(true);
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_1,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
// Now remove all of them.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
@@ -327,10 +328,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
anyInt(), anyString(), eq(true))).thenReturn(true);
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
// Now remove all of them by sending an empty list.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
@@ -360,13 +361,13 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.remove(networkSuggestionList1, TEST_UID_1,
TEST_PACKAGE_1));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
Set<WifiNetworkSuggestion> allNetworkSuggestions =
mWifiNetworkSuggestionsManager.getAllNetworkSuggestions();
@@ -392,7 +393,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// Modify the original suggestion.
networkSuggestion.wifiConfiguration.meteredOverride =
@@ -401,7 +402,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Replace attempt should success.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiConfiguration.METERED_OVERRIDE_METERED,
mWifiNetworkSuggestionsManager
.get(TEST_PACKAGE_1).get(0).wifiConfiguration.meteredOverride);
@@ -422,7 +423,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// The first add should succeed.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
List<WifiNetworkSuggestion> originalNetworkSuggestionsList = networkSuggestionList;
// Now add 3 more.
@@ -435,7 +436,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// The second add should fail.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_EXCEEDS_MAX_PER_APP,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// Now remove 3 of the initially added ones.
networkSuggestionList = new ArrayList<>();
@@ -457,7 +458,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// This add should now succeed.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
}
/**
@@ -482,7 +483,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// Remove should fail because the network list is different.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_REMOVE_INVALID,
mWifiNetworkSuggestionsManager.remove(networkSuggestionList2, TEST_UID_1,
@@ -508,7 +509,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
.thenReturn(true);
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
ScanDetail scanDetail = createScanDetailForNetwork(networkSuggestion.wifiConfiguration);
@@ -535,7 +536,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
ScanDetail scanDetail = createScanDetailForNetwork(networkSuggestion.wifiConfiguration);
@@ -574,10 +575,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
@@ -611,7 +612,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
Set<WifiNetworkSuggestion> matchingNetworkSuggestions =
@@ -651,10 +652,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
@@ -695,7 +696,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
Set<WifiNetworkSuggestion> matchingNetworkSuggestions =
@@ -738,10 +739,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
@@ -782,7 +783,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertFalse(mWifiNetworkSuggestionsManager.hasUserApprovedForApp(TEST_PACKAGE_1));
ScanDetail scanDetail = createScanDetailForNetwork(networkSuggestion.wifiConfiguration);
@@ -808,7 +809,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// add the suggestion & ensure lookup works.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
assertNotNull(mWifiNetworkSuggestionsManager.getNetworkSuggestionsForScanDetail(
scanDetail));
@@ -834,7 +835,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
// Create a scan result corresponding to a different network.
@@ -866,7 +867,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
// Simulate connecting to the network.
@@ -881,8 +882,8 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
verify(mWifiMetrics).incrementNetworkSuggestionApiNumConnectSuccess();
// Verify that the correct broadcast was sent out.
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(TEST_PACKAGE_1, TEST_UID_1);
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(eq(TEST_PACKAGE_1),
+ eq(TEST_FEATURE), eq(TEST_UID_1), nullable(String.class));
validatePostConnectionBroadcastSent(TEST_PACKAGE_1, networkSuggestion);
// Verify no more broadcast were sent out.
@@ -907,7 +908,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
// Simulate binder was died.
drCaptor.getValue().binderDied();
@@ -925,8 +926,8 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
verify(mWifiMetrics).incrementNetworkSuggestionApiNumConnectFailure();
// Verify no connection failure event was sent out.
- mInorder.verify(mWifiPermissionsUtil, never())
- .enforceCanAccessScanResults(TEST_PACKAGE_1, TEST_UID_1);
+ mInorder.verify(mWifiPermissionsUtil, never()).enforceCanAccessScanResults(
+ eq(TEST_PACKAGE_1), eq(TEST_FEATURE), eq(TEST_UID_1), nullable(String.class));
verify(mListener, never()).onConnectionStatus(any(), anyInt());
// Verify no more broadcast were sent out.
@@ -956,7 +957,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
WifiConfiguration connectNetwork =
new WifiConfiguration(networkSuggestion.wifiConfiguration);
@@ -968,8 +969,8 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
WifiMetrics.ConnectionEvent.FAILURE_DHCP, connectNetwork, TEST_BSSID);
// Verify right callback were sent out.
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(TEST_PACKAGE_1, TEST_UID_1);
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(eq(TEST_PACKAGE_1),
+ eq(TEST_FEATURE), eq(TEST_UID_1), nullable(String.class));
verify(mListener)
.onConnectionStatus(networkSuggestion,
WifiManager.STATUS_SUGGESTION_CONNECTION_FAILURE_IP_PROVISIONING);
@@ -1007,10 +1008,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
@@ -1029,9 +1030,12 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Verify that the correct broadcasts were sent out.
for (int i = 0; i < 2; i++) {
ArgumentCaptor<String> packageNameCaptor = ArgumentCaptor.forClass(String.class);
+ ArgumentCaptor<String> featureIdCaptor = ArgumentCaptor.forClass(String.class);
ArgumentCaptor<Integer> uidCaptor = ArgumentCaptor.forClass(Integer.class);
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(packageNameCaptor.capture(), uidCaptor.capture());
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(
+ packageNameCaptor.capture(), featureIdCaptor.capture(), uidCaptor.capture(),
+ nullable(String.class));
+ assertEquals(TEST_FEATURE, featureIdCaptor.getValue());
if (packageNameCaptor.getValue().equals(TEST_PACKAGE_1)) {
assertEquals(Integer.valueOf(TEST_UID_1), uidCaptor.getValue());
validatePostConnectionBroadcastSent(TEST_PACKAGE_1, networkSuggestion1);
@@ -1075,10 +1079,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
WifiConfiguration connectNetwork =
@@ -1095,9 +1099,12 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Verify that the correct broadcasts were sent out.
for (int i = 0; i < 2; i++) {
ArgumentCaptor<String> packageNameCaptor = ArgumentCaptor.forClass(String.class);
+ ArgumentCaptor<String> featureIdCaptor = ArgumentCaptor.forClass(String.class);
ArgumentCaptor<Integer> uidCaptor = ArgumentCaptor.forClass(Integer.class);
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(packageNameCaptor.capture(), uidCaptor.capture());
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(
+ packageNameCaptor.capture(), featureIdCaptor.capture(), uidCaptor.capture(),
+ nullable(String.class));
+ assertEquals(TEST_FEATURE, featureIdCaptor.getValue());
if (packageNameCaptor.getValue().equals(TEST_PACKAGE_1)) {
assertEquals(Integer.valueOf(TEST_UID_1), uidCaptor.getValue());
validatePostConnectionBroadcastSent(TEST_PACKAGE_1, networkSuggestion1);
@@ -1142,10 +1149,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
@@ -1164,9 +1171,12 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Verify that the correct broadcasts were sent out.
for (int i = 0; i < 2; i++) {
ArgumentCaptor<String> packageNameCaptor = ArgumentCaptor.forClass(String.class);
+ ArgumentCaptor<String> featureIdCaptor = ArgumentCaptor.forClass(String.class);
ArgumentCaptor<Integer> uidCaptor = ArgumentCaptor.forClass(Integer.class);
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(packageNameCaptor.capture(), uidCaptor.capture());
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(
+ packageNameCaptor.capture(), featureIdCaptor.capture(), uidCaptor.capture(),
+ nullable(String.class));
+ assertEquals(TEST_FEATURE, featureIdCaptor.getValue());
if (packageNameCaptor.getValue().equals(TEST_PACKAGE_1)) {
assertEquals(Integer.valueOf(TEST_UID_1), uidCaptor.getValue());
validatePostConnectionBroadcastSent(TEST_PACKAGE_1, networkSuggestion1);
@@ -1201,7 +1211,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
verify(mWifiPermissionsUtil, times(2))
.checkNetworkCarrierProvisioningPermission(TEST_UID_1);
assertFalse(mWifiNetworkSuggestionsManager.hasUserApprovedForApp(TEST_PACKAGE_1));
@@ -1218,7 +1228,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Verify no broadcast was sent out.
mInorder.verify(mWifiPermissionsUtil, never()).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
mInorder.verify(mContext, never()).sendBroadcastAsUser(
any(), any());
}
@@ -1241,7 +1251,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
verify(mWifiPermissionsUtil, times(2))
.checkNetworkCarrierProvisioningPermission(TEST_UID_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
@@ -1258,7 +1268,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Verify no broadcast was sent out.
mInorder.verify(mWifiPermissionsUtil, never()).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
mInorder.verify(mContext, never()).sendBroadcastAsUser(
any(), any());
}
@@ -1281,13 +1291,13 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
verify(mWifiPermissionsUtil, times(2))
.checkNetworkCarrierProvisioningPermission(TEST_UID_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
- doThrow(new SecurityException())
- .when(mWifiPermissionsUtil).enforceCanAccessScanResults(TEST_PACKAGE_1, TEST_UID_1);
+ doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
+ eq(TEST_PACKAGE_1), eq(TEST_FEATURE), eq(TEST_UID_1), nullable(String.class));
WifiConfiguration connectNetwork =
new WifiConfiguration(networkSuggestion.wifiConfiguration);
@@ -1299,8 +1309,8 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
mWifiNetworkSuggestionsManager.handleConnectionAttemptEnded(
WifiMetrics.ConnectionEvent.FAILURE_NONE, connectNetwork, TEST_BSSID);
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(TEST_PACKAGE_1, TEST_UID_1);
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(eq(TEST_PACKAGE_1),
+ eq(TEST_FEATURE), eq(TEST_UID_1), nullable(String.class));
// Verify no broadcast was sent out.
mInorder.verifyNoMoreInteractions();
@@ -1321,7 +1331,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// Verify config store interactions.
verify(mWifiConfigManager).saveToStore(true);
@@ -1363,7 +1373,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.remove(networkSuggestionList, TEST_UID_1,
TEST_PACKAGE_1));
@@ -1395,7 +1405,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
passpointConfiguration.setHomeSp(homeSp);
WifiConfiguration dummyConfiguration = new WifiConfiguration();
dummyConfiguration.FQDN = TEST_FQDN;
- PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_1);
+ PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_1, TEST_FEATURE);
appInfo.hasUserApproved = true;
WifiNetworkSuggestion networkSuggestion = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, false, false, TEST_UID_1,
@@ -1449,7 +1459,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
@Test
public void testNetworkSuggestionsConfigStoreLoadAfterUserSwitch() {
// Read the store initially.
- PerAppInfo appInfo1 = new PerAppInfo(TEST_PACKAGE_1);
+ PerAppInfo appInfo1 = new PerAppInfo(TEST_PACKAGE_1, TEST_FEATURE);
appInfo1.hasUserApproved = true;
WifiNetworkSuggestion networkSuggestion1 = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, false, false, TEST_UID_1,
@@ -1463,7 +1473,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Now simulate user switch.
mDataSource.reset();
- PerAppInfo appInfo2 = new PerAppInfo(TEST_PACKAGE_2);
+ PerAppInfo appInfo2 = new PerAppInfo(TEST_PACKAGE_2, TEST_FEATURE);
appInfo2.hasUserApproved = true;
WifiNetworkSuggestion networkSuggestion2 = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, false, false, TEST_UID_1,
@@ -1513,7 +1523,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
// Simulate connecting to the network.
WifiConfiguration connectNetwork =
@@ -1548,7 +1558,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
// Simulate connecting to the network.
WifiConfiguration connectNetwork =
@@ -1592,10 +1602,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_2);
@@ -1633,7 +1643,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
// Simulate connecting to some other network.
@@ -1661,7 +1671,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
WifiConfiguration connectNetwork =
new WifiConfiguration(networkSuggestion.wifiConfiguration);
@@ -1709,14 +1719,14 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Watch app-ops changes on first add.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mInorder.verify(mAppOpsManager).startWatchingMode(eq(OPSTR_CHANGE_WIFI_STATE),
eq(TEST_PACKAGE_1), mAppOpChangedListenerCaptor.capture());
// Nothing happens on second add.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// Now remove first add, nothing happens.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
@@ -1747,7 +1757,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
Set<WifiNetworkSuggestion> allNetworkSuggestions =
mWifiNetworkSuggestionsManager.getAllNetworkSuggestions();
@@ -1788,7 +1798,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
*/
@Test
public void testAppOpsChangeAfterConfigStoreLoad() {
- PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_1);
+ PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_1, TEST_FEATURE);
WifiNetworkSuggestion networkSuggestion = new WifiNetworkSuggestion(
WifiConfigurationTestUtil.createOpenNetwork(), null, false, false, TEST_UID_1,
TEST_PACKAGE_1);
@@ -1846,7 +1856,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
Set<WifiNetworkSuggestion> allNetworkSuggestions =
mWifiNetworkSuggestionsManager.getAllNetworkSuggestions();
@@ -1897,10 +1907,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
// Remove all suggestions from TEST_PACKAGE_1 & TEST_PACKAGE_2, we should continue to track.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
@@ -1963,10 +1973,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
// Remove all suggestions from TEST_PACKAGE_1 & TEST_PACKAGE_2, we should continue to track.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
@@ -2011,7 +2021,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
validateUserApprovalNotification(TEST_APP_NAME_1);
// Simulate user dismissal notification.
sendBroadcastForUserAction(
@@ -2052,7 +2062,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
validateUserApprovalNotification(TEST_APP_NAME_1);
// Simulate user dismissal notification.
@@ -2098,7 +2108,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
verify(mAppOpsManager).startWatchingMode(eq(OPSTR_CHANGE_WIFI_STATE),
eq(TEST_PACKAGE_1), mAppOpChangedListenerCaptor.capture());
validateUserApprovalNotification(TEST_APP_NAME_1);
@@ -2143,7 +2153,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Assuming the user re-enabled the app again & added the same suggestions back.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// We should resend the notification when the network is again found in scan results.
mWifiNetworkSuggestionsManager.getNetworkSuggestionsForScanDetail(
@@ -2167,7 +2177,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
// Simulate finding the network in scan results.
mWifiNetworkSuggestionsManager.getNetworkSuggestionsForScanDetail(
@@ -2216,7 +2226,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
networkSuggestionList.add(networkSuggestion4);
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
storedNetworkSuggestionListPerApp =
mWifiNetworkSuggestionsManager.get(TEST_PACKAGE_1);
@@ -2258,10 +2268,10 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList1, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList2, TEST_UID_2,
- TEST_PACKAGE_2));
+ TEST_PACKAGE_2, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(false, TEST_PACKAGE_2);
List<WifiScanner.ScanSettings.HiddenNetwork> hiddenNetworks =
@@ -2285,7 +2295,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
validateUserApprovalNotification(TEST_APP_NAME_1);
// Simulate user clicking on allow in the notification.
@@ -2320,7 +2330,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
}};
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
verify(mAppOpsManager).startWatchingMode(eq(OPSTR_CHANGE_WIFI_STATE),
eq(TEST_PACKAGE_1), mAppOpChangedListenerCaptor.capture());
validateUserApprovalNotification(TEST_APP_NAME_1);
@@ -2354,7 +2364,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
// Assuming the user re-enabled the app again & added the same suggestions back.
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
validateUserApprovalNotification(TEST_APP_NAME_1);
verifyNoMoreInteractions(mNotificationManger);
}
@@ -2386,7 +2396,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
.thenReturn(true);
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
mWifiNetworkSuggestionsManager.add(networkSuggestionList, TEST_UID_1,
- TEST_PACKAGE_1));
+ TEST_PACKAGE_1, TEST_FEATURE));
mWifiNetworkSuggestionsManager.setHasUserApprovedForApp(true, TEST_PACKAGE_1);
@@ -2402,8 +2412,8 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
verify(mWifiMetrics).incrementNetworkSuggestionApiNumConnectSuccess();
// Verify that the correct broadcast was sent out.
- mInorder.verify(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(TEST_PACKAGE_1, TEST_UID_1);
+ mInorder.verify(mWifiPermissionsUtil).enforceCanAccessScanResults(eq(TEST_PACKAGE_1),
+ eq(TEST_FEATURE), eq(TEST_UID_1), nullable(String.class));
validatePostConnectionBroadcastSent(TEST_PACKAGE_1, networkSuggestion);
// Verify no more broadcast were sent out.
@@ -2482,7 +2492,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
.thenReturn(true);
int status = mWifiNetworkSuggestionsManager
- .add(networkSuggestionList, TEST_UID_1, TEST_APP_NAME_1);
+ .add(networkSuggestionList, TEST_UID_1, TEST_APP_NAME_1, TEST_FEATURE);
assertEquals(status, WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS);
@@ -2501,7 +2511,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
.thenReturn(false);
int status = mWifiNetworkSuggestionsManager
- .add(networkSuggestionList, TEST_UID_1, TEST_APP_NAME_1);
+ .add(networkSuggestionList, TEST_UID_1, TEST_APP_NAME_1, TEST_FEATURE);
assertEquals(status,
WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_APP_DISALLOWED);
@@ -2519,7 +2529,7 @@ public class WifiNetworkSuggestionsManagerTest extends WifiBaseTest {
.thenReturn(false);
int status = mWifiNetworkSuggestionsManager
- .add(networkSuggestionList, TEST_UID_1, TEST_APP_NAME_1);
+ .add(networkSuggestionList, TEST_UID_1, TEST_APP_NAME_1, TEST_FEATURE);
assertEquals(status, WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS);
}
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java b/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java
index ddf6819e3..f69df49cc 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiServiceImplTest.java
@@ -46,6 +46,7 @@ import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.mockito.AdditionalAnswers.returnsSecondArg;
import static org.mockito.ArgumentMatchers.notNull;
+import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
@@ -172,6 +173,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
private static final int DEFAULT_VERBOSE_LOGGING = 0;
private static final String ANDROID_SYSTEM_PACKAGE = "android";
private static final String TEST_PACKAGE_NAME = "TestPackage";
+ private static final String TEST_FEATURE_ID = "TestFeature";
private static final String SYSUI_PACKAGE_NAME = "com.android.systemui";
private static final int TEST_PID = 6789;
private static final int TEST_PID2 = 9876;
@@ -346,6 +348,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
// Create an OSU provider that can be provisioned via an open OSU AP
mOsuProvider = PasspointProvisioningTestUtil.generateOsuProvider(true);
when(mContext.getOpPackageName()).thenReturn(TEST_PACKAGE_NAME);
+ when(mContext.getFeatureId()).thenReturn(TEST_FEATURE_ID);
when(mContext.checkPermission(eq(android.Manifest.permission.NETWORK_SETTINGS),
anyInt(), anyInt())).thenReturn(PackageManager.PERMISSION_DENIED);
when(mContext.checkPermission(eq(android.Manifest.permission.NETWORK_SETUP_WIZARD),
@@ -438,7 +441,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
@Test
public void testRemoveNetworkFailureAppBelowQSdk() {
doReturn(AppOpsManager.MODE_ALLOWED).when(mAppOpsManager)
- .noteOp(AppOpsManager.OPSTR_CHANGE_WIFI_STATE, Process.myUid(), TEST_PACKAGE_NAME);
+ .noteOp(AppOpsManager.OPSTR_CHANGE_WIFI_STATE, Process.myUid(), TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, null);
when(mWifiPermissionsUtil.isTargetSdkLessThan(anyString(),
eq(Build.VERSION_CODES.Q), anyInt())).thenReturn(true);
when(mWifiConfigManager.removeNetwork(anyInt(), anyInt(), anyString())).thenReturn(false);
@@ -1174,7 +1178,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
doReturn(AppOpsManager.MODE_IGNORED).when(mAppOpsManager)
.noteOp(AppOpsManager.OPSTR_CHANGE_WIFI_STATE, Process.myUid(), SCAN_PACKAGE_NAME);
mLooper.startAutoDispatch();
- assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME));
+ assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME, TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy, never()).startScan(Process.myUid(), SCAN_PACKAGE_NAME);
}
@@ -1185,9 +1189,10 @@ public class WifiServiceImplTest extends WifiBaseTest {
@Test
public void testStartScanFailureInCanAccessScanResultsPermission() {
doThrow(new SecurityException()).when(mWifiPermissionsUtil)
- .enforceCanAccessScanResults(SCAN_PACKAGE_NAME, Process.myUid());
+ .enforceCanAccessScanResults(SCAN_PACKAGE_NAME, TEST_FEATURE_ID, Process.myUid(),
+ null);
mLooper.startAutoDispatch();
- assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME));
+ assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME, TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy, never()).startScan(Process.myUid(), SCAN_PACKAGE_NAME);
}
@@ -1200,7 +1205,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
mWifiServiceImpl = makeWifiServiceImplWithMockRunnerWhichTimesOut();
mLooper.startAutoDispatch();
- assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME));
+ assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME, TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy, never()).startScan(anyInt(), eq(SCAN_PACKAGE_NAME));
}
@@ -1213,7 +1218,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
when(mScanRequestProxy.startScan(anyInt(), anyString())).thenReturn(false);
mLooper.startAutoDispatch();
- assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME));
+ assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME, TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy).startScan(Binder.getCallingUid(), SCAN_PACKAGE_NAME);
}
@@ -1241,9 +1246,9 @@ public class WifiServiceImplTest extends WifiBaseTest {
setupForGetConnectionInfo();
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
- WifiInfo connectionInfo = mWifiServiceImpl.getConnectionInfo(TEST_PACKAGE);
+ WifiInfo connectionInfo = mWifiServiceImpl.getConnectionInfo(TEST_PACKAGE, TEST_FEATURE_ID);
assertEquals(WifiSsid.NONE, connectionInfo.getSSID());
assertEquals(WifiInfo.DEFAULT_MAC_ADDRESS, connectionInfo.getBSSID());
@@ -1259,9 +1264,9 @@ public class WifiServiceImplTest extends WifiBaseTest {
setupForGetConnectionInfo();
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
- WifiInfo connectionInfo = mWifiServiceImpl.getConnectionInfo(TEST_PACKAGE);
+ WifiInfo connectionInfo = mWifiServiceImpl.getConnectionInfo(TEST_PACKAGE, TEST_FEATURE_ID);
assertEquals(WifiSsid.NONE, connectionInfo.getSSID());
assertEquals(WifiInfo.DEFAULT_MAC_ADDRESS, connectionInfo.getBSSID());
@@ -1276,7 +1281,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
public void testConnectedIdsAreVisibleFromPermittedApp() throws Exception {
setupForGetConnectionInfo();
- WifiInfo connectionInfo = mWifiServiceImpl.getConnectionInfo(TEST_PACKAGE);
+ WifiInfo connectionInfo = mWifiServiceImpl.getConnectionInfo(TEST_PACKAGE, TEST_FEATURE_ID);
assertEquals(TEST_SSID_WITH_QUOTES, connectionInfo.getSSID());
assertEquals(TEST_BSSID, connectionInfo.getBSSID());
@@ -1297,7 +1302,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
TelephonyManager.CARRIER_PRIVILEGE_STATUS_NO_ACCESS);
ParceledListSlice<WifiConfiguration> configs =
- mWifiServiceImpl.getConfiguredNetworks(TEST_PACKAGE);
+ mWifiServiceImpl.getConfiguredNetworks(TEST_PACKAGE, TEST_FEATURE_ID);
assertEquals(0, configs.getList().size());
}
@@ -1312,10 +1317,10 @@ public class WifiServiceImplTest extends WifiBaseTest {
.thenReturn(TEST_WIFI_CONFIGURATION_LIST);
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
ParceledListSlice<WifiConfiguration> configs =
- mWifiServiceImpl.getConfiguredNetworks(TEST_PACKAGE);
+ mWifiServiceImpl.getConfiguredNetworks(TEST_PACKAGE, TEST_FEATURE_ID);
assertEquals(0, configs.getList().size());
@@ -1337,7 +1342,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
mLooper.startAutoDispatch();
ParceledListSlice<WifiConfiguration> configs =
- mWifiServiceImpl.getConfiguredNetworks(TEST_PACKAGE);
+ mWifiServiceImpl.getConfiguredNetworks(TEST_PACKAGE, TEST_FEATURE_ID);
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mWifiConfigManager).getSavedNetworks(eq(Process.WIFI_UID));
@@ -1356,11 +1361,11 @@ public class WifiServiceImplTest extends WifiBaseTest {
.thenReturn(TEST_WIFI_CONFIGURATION_LIST);
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
mLooper.startAutoDispatch();
ParceledListSlice<WifiConfiguration> configs =
- mWifiServiceImpl.getPrivilegedConfiguredNetworks(TEST_PACKAGE);
+ mWifiServiceImpl.getPrivilegedConfiguredNetworks(TEST_PACKAGE, TEST_FEATURE_ID);
mLooper.stopAutoDispatchAndIgnoreExceptions();
assertNull(configs);
@@ -1376,11 +1381,11 @@ public class WifiServiceImplTest extends WifiBaseTest {
.thenReturn(TEST_WIFI_CONFIGURATION_LIST);
doThrow(new SecurityException()).when(mWifiPermissionsUtil).enforceCanAccessScanResults(
- anyString(), anyInt());
+ anyString(), nullable(String.class), anyInt(), nullable(String.class));
mLooper.startAutoDispatch();
ParceledListSlice<WifiConfiguration> configs =
- mWifiServiceImpl.getPrivilegedConfiguredNetworks(TEST_PACKAGE);
+ mWifiServiceImpl.getPrivilegedConfiguredNetworks(TEST_PACKAGE, TEST_FEATURE_ID);
mLooper.stopAutoDispatchAndIgnoreExceptions();
assertNull(configs);
@@ -1397,7 +1402,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
mLooper.startAutoDispatch();
ParceledListSlice<WifiConfiguration> configs =
- mWifiServiceImpl.getPrivilegedConfiguredNetworks(TEST_PACKAGE);
+ mWifiServiceImpl.getPrivilegedConfiguredNetworks(TEST_PACKAGE, TEST_FEATURE_ID);
mLooper.stopAutoDispatchAndIgnoreExceptions();
WifiConfigurationTestUtil.assertConfigurationsEqualForBackup(
@@ -1417,8 +1422,10 @@ public class WifiServiceImplTest extends WifiBaseTest {
when(mScanRequestProxy.getScanResults()).thenReturn(scanResultList);
String packageName = "test.com";
+ String featureId = "test.com.featureId";
mLooper.startAutoDispatch();
- List<ScanResult> retrievedScanResultList = mWifiServiceImpl.getScanResults(packageName);
+ List<ScanResult> retrievedScanResultList = mWifiServiceImpl.getScanResults(packageName,
+ featureId);
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy).getScanResults();
@@ -1441,8 +1448,10 @@ public class WifiServiceImplTest extends WifiBaseTest {
when(mScanRequestProxy.getScanResults()).thenReturn(scanResultList);
String packageName = "test.com";
+ String featureId = "test.com.featureId";
mLooper.startAutoDispatch();
- List<ScanResult> retrievedScanResultList = mWifiServiceImpl.getScanResults(packageName);
+ List<ScanResult> retrievedScanResultList = mWifiServiceImpl.getScanResults(packageName,
+ featureId);
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy, never()).getScanResults();
@@ -1459,7 +1468,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
private void registerLOHSRequestFull() {
setupLohsPermissions();
- int result = mWifiServiceImpl.startLocalOnlyHotspot(mLohsCallback, TEST_PACKAGE_NAME, null);
+ int result = mWifiServiceImpl.startLocalOnlyHotspot(mLohsCallback, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, null);
assertEquals(LocalOnlyHotspotCallback.REQUEST_REGISTERED, result);
verifyCheckChangePermission(TEST_PACKAGE_NAME);
}
@@ -1493,6 +1503,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
public void testStartLocalOnlyHotspotThrowsSecurityExceptionWithoutLocationPermission() {
doThrow(new SecurityException())
.when(mWifiPermissionsUtil).enforceLocationPermission(eq(TEST_PACKAGE_NAME),
+ eq(TEST_FEATURE_ID),
anyInt());
mWifiServiceImpl.startLocalOnlyHotspot(mLohsCallback, TEST_PACKAGE_NAME);
}
@@ -1718,7 +1729,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
// set up basic permissions, but not NETWORK_SETUP_WIZARD
setupLohsPermissions();
setupWardenForCustomLohs();
- mWifiServiceImpl.startLocalOnlyHotspot(mLohsCallback, TEST_PACKAGE_NAME, customConfig);
+ mWifiServiceImpl.startLocalOnlyHotspot(mLohsCallback, TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ customConfig);
}
private static void nopDeathCallback(LocalOnlyHotspotRequestInfo requestor) {
@@ -1735,9 +1747,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
setupForCustomLohs();
mWifiServiceImpl.registerLOHSForTest(mPid, new LocalOnlyHotspotRequestInfo(
sharedCallback, WifiServiceImplTest::nopDeathCallback, null));
- assertThat(mWifiServiceImpl.startLocalOnlyHotspot(
- exclusiveCallback, TEST_PACKAGE_NAME, exclusiveConfig))
- .isEqualTo(ERROR_GENERIC);
+ assertThat(mWifiServiceImpl.startLocalOnlyHotspot(exclusiveCallback, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, exclusiveConfig)).isEqualTo(ERROR_GENERIC);
mLooper.dispatchAll();
assertThat(sharedCallback.mIsStarted).isTrue();
@@ -1755,9 +1766,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
setupForCustomLohs();
mWifiServiceImpl.registerLOHSForTest(mPid, new LocalOnlyHotspotRequestInfo(
exclusiveCallback, WifiServiceImplTest::nopDeathCallback, exclusiveConfig));
- assertThat(mWifiServiceImpl.startLocalOnlyHotspot(
- sharedCallback, TEST_PACKAGE_NAME, null))
- .isEqualTo(ERROR_GENERIC);
+ assertThat(mWifiServiceImpl.startLocalOnlyHotspot(sharedCallback, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, null)).isEqualTo(ERROR_GENERIC);
mLooper.dispatchAll();
assertThat(exclusiveCallback.mIsStarted).isTrue();
@@ -1773,8 +1783,9 @@ public class WifiServiceImplTest extends WifiBaseTest {
FakeLohsCallback callback = new FakeLohsCallback();
setupForCustomLohs();
- assertThat(mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, config))
- .isEqualTo(REQUEST_REGISTERED);
+ assertThat(
+ mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ config)).isEqualTo(REQUEST_REGISTERED);
mLooper.dispatchAll();
assertThat(callback.mIsStarted).isTrue();
@@ -1791,8 +1802,9 @@ public class WifiServiceImplTest extends WifiBaseTest {
FakeLohsCallback callback = new FakeLohsCallback();
setupForCustomLohs();
- assertThat(mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, config))
- .isEqualTo(REQUEST_REGISTERED);
+ assertThat(
+ mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ config)).isEqualTo(REQUEST_REGISTERED);
mLooper.dispatchAll();
assertThat(callback.mIsStarted).isTrue();
@@ -1809,8 +1821,9 @@ public class WifiServiceImplTest extends WifiBaseTest {
FakeLohsCallback callback = new FakeLohsCallback();
setupForCustomLohs();
- assertThat(mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, config))
- .isEqualTo(REQUEST_REGISTERED);
+ assertThat(
+ mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ config)).isEqualTo(REQUEST_REGISTERED);
mLooper.dispatchAll();
assertThat(callback.mIsStarted).isTrue();
@@ -1825,8 +1838,9 @@ public class WifiServiceImplTest extends WifiBaseTest {
FakeLohsCallback callback = new FakeLohsCallback();
setupForCustomLohs();
- assertThat(mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, config))
- .isEqualTo(REQUEST_REGISTERED);
+ assertThat(
+ mWifiServiceImpl.startLocalOnlyHotspot(callback, TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ config)).isEqualTo(REQUEST_REGISTERED);
mLooper.dispatchAll();
assertThat(callback.mIsStarted).isTrue();
@@ -3016,7 +3030,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
TestUtil.sendIdleModeChanged(mBroadcastReceiverCaptor.getValue(), mContext);
// Send a scan request while the device is idle.
- assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME));
+ assertFalse(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME, TEST_FEATURE_ID));
// No scans must be made yet as the device is idle.
verify(mScanRequestProxy, never()).startScan(Process.myUid(), SCAN_PACKAGE_NAME);
@@ -3035,7 +3049,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
// Send another scan request. The device is not idle anymore, so it must be executed
// immediately.
mLooper.startAutoDispatch();
- assertTrue(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME));
+ assertTrue(mWifiServiceImpl.startScan(SCAN_PACKAGE_NAME, TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mScanRequestProxy).startScan(Process.myUid(), SCAN_PACKAGE_NAME);
}
@@ -3798,22 +3812,25 @@ public class WifiServiceImplTest extends WifiBaseTest {
*/
@Test
public void testAddNetworkSuggestions() {
- when(mWifiNetworkSuggestionsManager.add(any(), anyInt(), anyString()))
- .thenReturn(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS);
+ when(mWifiNetworkSuggestionsManager.add(any(), anyInt(), anyString(),
+ nullable(String.class))).thenReturn(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS);
mLooper.startAutoDispatch();
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS,
- mWifiServiceImpl.addNetworkSuggestions(mock(List.class), TEST_PACKAGE_NAME));
+ mWifiServiceImpl.addNetworkSuggestions(mock(List.class), TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
- when(mWifiNetworkSuggestionsManager.add(any(), anyInt(), anyString()))
- .thenReturn(WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE);
+ when(mWifiNetworkSuggestionsManager.add(any(), anyInt(), anyString(),
+ nullable(String.class))).thenReturn(
+ WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE);
mLooper.startAutoDispatch();
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE,
- mWifiServiceImpl.addNetworkSuggestions(mock(List.class), TEST_PACKAGE_NAME));
+ mWifiServiceImpl.addNetworkSuggestions(mock(List.class), TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
verify(mWifiNetworkSuggestionsManager, times(2)).add(
- any(), eq(Binder.getCallingUid()), eq(TEST_PACKAGE_NAME));
+ any(), eq(Binder.getCallingUid()), eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID));
}
/**
@@ -3826,11 +3843,12 @@ public class WifiServiceImplTest extends WifiBaseTest {
mLooper.startAutoDispatch();
assertEquals(WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_INTERNAL,
- mWifiServiceImpl.addNetworkSuggestions(mock(List.class), TEST_PACKAGE_NAME));
+ mWifiServiceImpl.addNetworkSuggestions(mock(List.class), TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID));
mLooper.stopAutoDispatchAndIgnoreExceptions();
- verify(mWifiNetworkSuggestionsManager, never()).add(
- any(), eq(Binder.getCallingUid()), eq(TEST_PACKAGE_NAME));
+ verify(mWifiNetworkSuggestionsManager, never()).add(any(), eq(Binder.getCallingUid()),
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID));
}
/**
@@ -4401,7 +4419,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
doThrow(new SecurityException()).when(mContext).enforceCallingOrSelfPermission(
eq(android.Manifest.permission.ACCESS_WIFI_STATE), eq("WifiService"));
mWifiServiceImpl.registerSuggestionConnectionStatusListener(mAppBinder,
- mSuggestionConnectionStatusListener, NETWORK_CALLBACK_ID, TEST_PACKAGE_NAME);
+ mSuggestionConnectionStatusListener, NETWORK_CALLBACK_ID, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID);
}
/**
@@ -4410,7 +4429,7 @@ public class WifiServiceImplTest extends WifiBaseTest {
@Test(expected = IllegalArgumentException.class)
public void testRegisterSuggestionNetworkCallbackWithIllegalArgument() {
mWifiServiceImpl.registerSuggestionConnectionStatusListener(mAppBinder, null,
- NETWORK_CALLBACK_ID, TEST_PACKAGE_NAME);
+ NETWORK_CALLBACK_ID, TEST_PACKAGE_NAME, TEST_FEATURE_ID);
}
/**
@@ -4430,7 +4449,8 @@ public class WifiServiceImplTest extends WifiBaseTest {
@Test
public void testRegisterUnregisterSuggestionNetworkCallback() throws Exception {
mWifiServiceImpl.registerSuggestionConnectionStatusListener(mAppBinder,
- mSuggestionConnectionStatusListener, NETWORK_CALLBACK_ID, TEST_PACKAGE_NAME);
+ mSuggestionConnectionStatusListener, NETWORK_CALLBACK_ID, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID);
mLooper.dispatchAll();
verify(mWifiNetworkSuggestionsManager).registerSuggestionConnectionStatusListener(
eq(mAppBinder), eq(mSuggestionConnectionStatusListener), eq(NETWORK_CALLBACK_ID),
diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java
index b803dd515..a488baf2a 100644
--- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareDataPathStateManagerTest.java
@@ -1615,7 +1615,7 @@ public class WifiAwareDataPathStateManagerTest extends WifiBaseTest {
InOrder inOrderS = inOrder(mockAwareService, mockCallback, mockSessionCallback);
mgr.attach(mMockLooperHandler, configRequest, mockCallback, null);
- inOrderS.verify(mockAwareService).connect(any(), any(),
+ inOrderS.verify(mockAwareService).connect(any(), any(), any(),
clientProxyCallback.capture(), eq(configRequest), eq(false));
IWifiAwareEventCallback iwaec = clientProxyCallback.getValue();
iwaec.onConnectSuccess(clientId);
@@ -1624,13 +1624,13 @@ public class WifiAwareDataPathStateManagerTest extends WifiBaseTest {
if (doPublish) {
sessionCaptor.getValue().publish(publishConfig, mockSessionCallback,
mMockLooperHandler);
- inOrderS.verify(mockAwareService).publish(any(), eq(clientId), eq(publishConfig),
+ inOrderS.verify(mockAwareService).publish(any(), any(), eq(clientId), eq(publishConfig),
sessionProxyCallback.capture());
} else {
sessionCaptor.getValue().subscribe(subscribeConfig, mockSessionCallback,
mMockLooperHandler);
- inOrderS.verify(mockAwareService).subscribe(any(), eq(clientId), eq(subscribeConfig),
- sessionProxyCallback.capture());
+ inOrderS.verify(mockAwareService).subscribe(any(), any(), eq(clientId),
+ eq(subscribeConfig), sessionProxyCallback.capture());
}
sessionProxyCallback.getValue().onSessionStarted(sessionId);
mMockLooper.dispatchAll();
@@ -1693,7 +1693,7 @@ public class WifiAwareDataPathStateManagerTest extends WifiBaseTest {
AttachCallback mockCallback = mock(AttachCallback.class);
mgr.attach(mMockLooperHandler, configRequest, mockCallback, null);
- verify(mockAwareService).connect(any(), any(),
+ verify(mockAwareService).connect(any(), any(), any(),
clientProxyCallback.capture(), eq(configRequest), eq(false));
clientProxyCallback.getValue().onConnectSuccess(clientId);
mMockLooper.dispatchAll();
@@ -1773,6 +1773,7 @@ public class WifiAwareDataPathStateManagerTest extends WifiBaseTest {
throws Exception {
final int pid = 2000;
final String callingPackage = "com.android.somePackage";
+ final String callingFeatureId = "com.android.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
ArgumentCaptor<Short> transactionId = ArgumentCaptor.forClass(Short.class);
@@ -1803,9 +1804,8 @@ public class WifiAwareDataPathStateManagerTest extends WifiBaseTest {
}
// (3) create client
- mDut.connect(clientId, Process.myUid(), pid, callingPackage, mMockCallback,
- configRequest,
- false);
+ mDut.connect(clientId, Process.myUid(), pid, callingPackage, callingFeatureId,
+ mMockCallback, configRequest, false);
mMockLooper.dispatchAll();
if (startUpSequence) {
diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java
index 65edbbb79..b0db9646e 100644
--- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareMetricsTest.java
@@ -239,25 +239,25 @@ public class WifiAwareMetricsTest extends WifiBaseTest {
// uid1: session 1
clients.put(10,
- new WifiAwareClientState(mMockContext, 10, uid1, 0, null, null, null, false,
+ new WifiAwareClientState(mMockContext, 10, uid1, 0, null, null, null, null, false,
mClock.getElapsedSinceBootMillis(), mWifiPermissionsUtil));
mDut.recordAttachSession(uid1, false, clients);
// uid1: session 2
clients.put(11,
- new WifiAwareClientState(mMockContext, 11, uid1, 0, null, null, null, false,
+ new WifiAwareClientState(mMockContext, 11, uid1, 0, null, null, null, null, false,
mClock.getElapsedSinceBootMillis(), mWifiPermissionsUtil));
mDut.recordAttachSession(uid1, false, clients);
// uid2: session 1
clients.put(12,
- new WifiAwareClientState(mMockContext, 12, uid2, 0, null, null, null, false,
+ new WifiAwareClientState(mMockContext, 12, uid2, 0, null, null, null, null, false,
mClock.getElapsedSinceBootMillis(), mWifiPermissionsUtil));
mDut.recordAttachSession(uid2, false, clients);
// uid2: session 2
clients.put(13,
- new WifiAwareClientState(mMockContext, 13, uid2, 0, null, null, null, true,
+ new WifiAwareClientState(mMockContext, 13, uid2, 0, null, null, null, null, true,
mClock.getElapsedSinceBootMillis(), mWifiPermissionsUtil));
mDut.recordAttachSession(uid2, true, clients);
@@ -273,7 +273,7 @@ public class WifiAwareMetricsTest extends WifiBaseTest {
// uid2: session 3
clients.put(14,
- new WifiAwareClientState(mMockContext, 14, uid2, 0, null, null, null, false,
+ new WifiAwareClientState(mMockContext, 14, uid2, 0, null, null, null, null, false,
mClock.getElapsedSinceBootMillis(), mWifiPermissionsUtil));
mDut.recordAttachSession(uid2, false, clients);
@@ -317,11 +317,11 @@ public class WifiAwareMetricsTest extends WifiBaseTest {
setTime(5);
WifiAwareClientState client1 = new WifiAwareClientState(mMockContext, 10, uid1, 0, null,
- null, null, false, 0, mWifiPermissionsUtil);
+ null, null, null, false, 0, mWifiPermissionsUtil);
WifiAwareClientState client2 = new WifiAwareClientState(mMockContext, 11, uid2, 0, null,
- null, null, false, 0, mWifiPermissionsUtil);
+ null, null, null, false, 0, mWifiPermissionsUtil);
WifiAwareClientState client3 = new WifiAwareClientState(mMockContext, 12, uid3, 0, null,
- null, null, false, 0, mWifiPermissionsUtil);
+ null, null, null, false, 0, mWifiPermissionsUtil);
clients.put(10, client1);
clients.put(11, client2);
clients.put(12, client3);
diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareServiceImplTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareServiceImplTest.java
index 95b7b0b14..1dd3ff8a7 100644
--- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareServiceImplTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareServiceImplTest.java
@@ -78,6 +78,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
private WifiAwareServiceImplSpy mDut;
private int mDefaultUid = 1500;
private String mPackageName = "some.package";
+ private String mFeatureId = "some.feature";
private TestLooper mMockLooper;
@Mock
@@ -182,12 +183,13 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
public void testConnectWithConfig() {
ConfigRequest configRequest = new ConfigRequest.Builder().setMasterPreference(55).build();
String callingPackage = "com.google.somePackage";
+ String callingFeatureId = "com.google.someFeature";
- mDut.connect(mBinderMock, callingPackage, mCallbackMock,
+ mDut.connect(mBinderMock, callingPackage, callingFeatureId, mCallbackMock,
configRequest, false);
- verify(mAwareStateManagerMock).connect(anyInt(), anyInt(), anyInt(),
- eq(callingPackage), eq(mCallbackMock), eq(configRequest), eq(false));
+ verify(mAwareStateManagerMock).connect(anyInt(), anyInt(), anyInt(), eq(callingPackage),
+ eq(callingFeatureId), eq(mCallbackMock), eq(configRequest), eq(false));
}
/**
@@ -257,7 +259,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
PublishConfig publishConfig = new PublishConfig.Builder().setServiceName("valid.value")
.build();
- mDut.publish(mPackageName, clientId, publishConfig, mSessionCallbackMock);
+ mDut.publish(mPackageName, mFeatureId, clientId, publishConfig, mSessionCallbackMock);
verify(mAwareStateManagerMock).publish(clientId, publishConfig, mSessionCallbackMock);
assertTrue("SecurityException for invalid access from wrong UID thrown", failsAsExpected);
@@ -277,7 +279,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
IWifiAwareDiscoverySessionCallback mockCallback = mock(
IWifiAwareDiscoverySessionCallback.class);
- mDut.publish(mPackageName, clientId, publishConfig, mockCallback);
+ mDut.publish(mPackageName, mFeatureId, clientId, publishConfig, mockCallback);
}
/**
@@ -294,7 +296,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
IWifiAwareDiscoverySessionCallback mockCallback = mock(
IWifiAwareDiscoverySessionCallback.class);
- mDut.subscribe(mPackageName, clientId, subscribeConfig, mockCallback);
+ mDut.subscribe(mPackageName, mFeatureId, clientId, subscribeConfig, mockCallback);
}
@@ -326,9 +328,9 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
int prevId = 0;
for (int i = 0; i < loopCount; ++i) {
- mDut.connect(mBinderMock, "", mCallbackMock, null, false);
+ mDut.connect(mBinderMock, "", "", mCallbackMock, null, false);
inOrder.verify(mAwareStateManagerMock).connect(clientIdCaptor.capture(), anyInt(),
- anyInt(), any(), eq(mCallbackMock), any(), eq(false));
+ anyInt(), any(), any(), eq(mCallbackMock), any(), eq(false));
int id = clientIdCaptor.getValue();
if (i != 0) {
assertTrue("Client ID incrementing", id > prevId);
@@ -361,7 +363,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
IWifiAwareDiscoverySessionCallback mockCallback = mock(
IWifiAwareDiscoverySessionCallback.class);
- mDut.publish(mPackageName, clientId, publishConfig, mockCallback);
+ mDut.publish(mPackageName, mFeatureId, clientId, publishConfig, mockCallback);
verify(mAwareStateManagerMock).publish(clientId, publishConfig, mockCallback);
}
@@ -456,7 +458,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
IWifiAwareDiscoverySessionCallback mockCallback = mock(
IWifiAwareDiscoverySessionCallback.class);
- mDut.subscribe(mPackageName, clientId, subscribeConfig, mockCallback);
+ mDut.subscribe(mPackageName, mFeatureId, clientId, subscribeConfig, mockCallback);
verify(mAwareStateManagerMock).subscribe(clientId, subscribeConfig, mockCallback);
}
@@ -642,7 +644,7 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
IWifiAwareDiscoverySessionCallback mockCallback = mock(
IWifiAwareDiscoverySessionCallback.class);
- mDut.publish(mPackageName, clientId, publishConfig, mockCallback);
+ mDut.publish(mPackageName, mFeatureId, clientId, publishConfig, mockCallback);
verify(mAwareStateManagerMock).publish(clientId, publishConfig, mockCallback);
}
@@ -658,20 +660,21 @@ public class WifiAwareServiceImplTest extends WifiBaseTest {
IWifiAwareDiscoverySessionCallback mockCallback = mock(
IWifiAwareDiscoverySessionCallback.class);
- mDut.subscribe(mPackageName, clientId, subscribeConfig, mockCallback);
+ mDut.subscribe(mPackageName, mFeatureId, clientId, subscribeConfig, mockCallback);
verify(mAwareStateManagerMock).subscribe(clientId, subscribeConfig, mockCallback);
}
private int doConnect() {
String callingPackage = "com.google.somePackage";
+ String callingFeatureId = "com.google.someFeature";
- mDut.connect(mBinderMock, callingPackage, mCallbackMock, null, false);
+ mDut.connect(mBinderMock, callingPackage, callingFeatureId, mCallbackMock, null, false);
ArgumentCaptor<Integer> clientId = ArgumentCaptor.forClass(Integer.class);
verify(mAwareStateManagerMock).connect(clientId.capture(), anyInt(), anyInt(),
- eq(callingPackage), eq(mCallbackMock), eq(new ConfigRequest.Builder().build()),
- eq(false));
+ eq(callingPackage), eq(callingFeatureId), eq(mCallbackMock),
+ eq(new ConfigRequest.Builder().build()), eq(false));
return clientId.getValue();
}
diff --git a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java
index d5948282d..5522d1918 100644
--- a/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/aware/WifiAwareStateManagerTest.java
@@ -30,7 +30,6 @@ import static org.mockito.ArgumentMatchers.anyByte;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.ArgumentMatchers.anyShort;
-import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.ArgumentMatchers.isNull;
import static org.mockito.Mockito.inOrder;
@@ -235,6 +234,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int pid1 = 2000;
final int pid2 = 2001;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String serviceName = "some-service-name";
final byte subscribeId1 = 15;
final byte subscribeId2 = 16;
@@ -268,7 +268,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect 2 clients
- mDut.connect(clientId1, uid1, pid1, callingPackage, mockCallback1, configRequest, false);
+ mDut.connect(clientId1, uid1, pid1, callingPackage, callingFeature, mockCallback1,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -276,7 +277,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
inOrder.verify(mockCallback1).onConnectSuccess(clientId1);
- mDut.connect(clientId2, uid2, pid2, callingPackage, mockCallback2, configRequest, false);
+ mDut.connect(clientId2, uid2, pid2, callingPackage, callingFeature, mockCallback2,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback2).onConnectSuccess(clientId2);
@@ -349,6 +351,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
IWifiAwareEventCallback mockCallback = mock(IWifiAwareEventCallback.class);
@@ -366,7 +369,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
collector.checkThat("usage enabled", mDut.isUsageEnabled(), equalTo(true));
// (2) connect (enable Aware)
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -395,6 +399,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
IWifiAwareEventCallback mockCallback = mock(IWifiAwareEventCallback.class);
@@ -421,7 +426,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
// (3) try connecting and validate that get failure callback (though app should be aware of
// non-availability through state change broadcast and/or query API)
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectFail(anyInt());
@@ -439,6 +445,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
IWifiAwareEventCallback mockCallback = mock(IWifiAwareEventCallback.class);
@@ -459,7 +466,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
collector.checkThat("usage enabled", mDut.isUsageEnabled(), equalTo(true));
// (2) connect (successfully)
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -485,7 +493,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
inOrderM.verify(mAwareMetricsMock).recordDisableAware();
// (4) try connecting again and validate that get a failure
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectFail(anyInt());
inOrderM.verify(mAwareMetricsMock).recordAttachStatus(NanStatusType.INTERNAL_FAILURE);
@@ -503,7 +512,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
validateCorrectAwareStatusChangeBroadcast(inOrder);
// (7) connect (should be successful)
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -526,6 +536,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
IWifiAwareEventCallback mockCallback = mock(IWifiAwareEventCallback.class);
@@ -544,7 +555,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (2) connect with HAL failure
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -568,6 +580,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int reason = NanStatusType.INTERNAL_FAILURE;
final byte[] someMac = HexEncoding.decode("000102030405".toCharArray(), false);
final byte[] someMac2 = HexEncoding.decode("060708090A0B".toCharArray(), false);
@@ -588,7 +601,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect 1st and 2nd clients
- mDut.connect(clientId1, uid, pid, callingPackage, mockCallback1, configRequest, false);
+ mDut.connect(clientId1, uid, pid, callingPackage, callingFeature, mockCallback1,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionIdCapture.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -597,7 +611,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
inOrder.verify(mockCallback1).onConnectSuccess(clientId1);
- mDut.connect(clientId2, uid, pid, callingPackage, mockCallback2, configRequest, true);
+ mDut.connect(clientId2, uid, pid, callingPackage, callingFeature, mockCallback2,
+ configRequest, true);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionIdCapture.capture(),
eq(configRequest), eq(true), eq(false), eq(true), eq(false));
@@ -626,8 +641,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (5) deliver new identity - with LOCATIONING permission
- when(mWifiPermissionsUtil.checkCallersLocationPermission(anyString(), anyInt(),
- anyBoolean())).thenReturn(true);
+ when(mWifiPermissionsUtil.checkCallersLocationPermission(eq(callingPackage),
+ eq(callingFeature), eq(uid), anyBoolean(), any())).thenReturn(true);
mDut.onInterfaceAddressChangeNotification(someMac);
mMockLooper.dispatchAll();
@@ -655,6 +670,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
final PublishConfig publishConfig = new PublishConfig.Builder().build();
@@ -673,7 +689,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect (successfully)
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -717,6 +734,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int reasonFail = NanStatusType.INTERNAL_FAILURE;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -737,7 +755,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -786,6 +805,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int reasonTerminate = NanStatusType.SUCCESS;
final byte publishId = 15;
@@ -808,7 +828,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -868,6 +889,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final byte publishId = 15;
final int reasonFail = NanStatusType.INTERNAL_FAILURE;
@@ -890,7 +912,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -980,6 +1003,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final byte publishId = 15;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -1000,7 +1024,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1046,6 +1071,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int reasonFail = NanStatusType.INTERNAL_FAILURE;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -1066,7 +1092,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1116,6 +1143,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int reasonTerminate = NanStatusType.SUCCESS;
final byte subscribeId = 15;
@@ -1138,7 +1166,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1196,6 +1225,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final byte subscribeId = 15;
final int reasonFail = NanStatusType.INTERNAL_FAILURE;
final int rangeMax = 10;
@@ -1220,7 +1250,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1293,6 +1324,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final byte subscribeId = 15;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -1311,7 +1343,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1352,6 +1385,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String serviceName = "some-service-name";
final String ssi = "some much longer and more arbitrary data";
final int reasonFail = NanStatusType.INTERNAL_FAILURE;
@@ -1392,7 +1426,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -1480,6 +1515,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int clusterLow = 7;
final int clusterHigh = 7;
final int masterPref = 0;
@@ -1518,7 +1554,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1585,6 +1622,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int clusterLow = 7;
final int clusterHigh = 7;
final int masterPref = 0;
@@ -1620,7 +1658,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1686,6 +1725,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String ssi = "some much longer and more arbitrary data";
final byte subscribeId = 15;
final int requestorId = 22;
@@ -1712,7 +1752,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1755,6 +1796,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String ssi = "some much longer and more arbitrary data";
final byte subscribeId = 15;
final int requestorId = 22;
@@ -1781,7 +1823,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1880,6 +1923,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String ssi = "some much longer and more arbitrary data";
final byte subscribeId = 15;
final int requestorId = 22;
@@ -1907,7 +1951,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -1967,6 +2012,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String ssi = "some much longer and more arbitrary data";
final byte subscribeId = 15;
final int requestorId = 22;
@@ -1994,7 +2040,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -2054,6 +2101,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String serviceName = "some-service-name";
final byte subscribeId = 15;
final int requestorId = 22;
@@ -2082,7 +2130,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -2153,6 +2202,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int pid2 = 3000;
final String callingPackage1 = "com.google.somePackage1";
final String callingPackage2 = "com.google.somePackage2";
+ final String callingFeature = "com.google.someFeature";
final String serviceName1 = "some-service-name1";
final String serviceName2 = "some-service-name2";
final byte subscribeId1 = 15;
@@ -2194,7 +2244,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId1, uid1, pid1, callingPackage1, mockCallback, configRequest1, false);
+ mDut.connect(clientId1, uid1, pid1, callingPackage1, callingFeature, mockCallback,
+ configRequest1, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest1), eq(false), eq(true), eq(true), eq(false));
@@ -2202,7 +2253,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectSuccess(clientId1);
- mDut.connect(clientId2, uid2, pid2, callingPackage2, mockCallback, configRequest2, false);
+ mDut.connect(clientId2, uid2, pid2, callingPackage2, callingFeature, mockCallback,
+ configRequest2, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectSuccess(clientId2);
@@ -2298,6 +2350,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String serviceName = "some-service-name";
final byte subscribeId = 15;
final int requestorId = 22;
@@ -2326,7 +2379,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -2427,6 +2481,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final String serviceName = "some-service-name";
final String ssi = "some much longer and more arbitrary data";
final byte subscribeId = 15;
@@ -2458,7 +2513,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (0) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -2643,6 +2699,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int masterPref1 = 111;
final int masterPref3 = 115;
final int dwInterval1Band24 = 2;
@@ -2687,7 +2744,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) config1 (valid)
- mDut.connect(clientId1, uid, pid, callingPackage, mockCallback1, configRequest1, false);
+ mDut.connect(clientId1, uid, pid, callingPackage, callingFeature, mockCallback1,
+ configRequest1, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
crCapture.capture(), eq(false), eq(true), eq(true), eq(false));
@@ -2697,13 +2755,15 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
inOrder.verify(mockCallback1).onConnectSuccess(clientId1);
// (2) config2 (incompatible with config1)
- mDut.connect(clientId2, uid, pid, callingPackage, mockCallback2, configRequest2, false);
+ mDut.connect(clientId2, uid, pid, callingPackage, callingFeature, mockCallback2,
+ configRequest2, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback2).onConnectFail(NanStatusType.INTERNAL_FAILURE);
validateInternalClientInfoCleanedUp(clientId2);
// (3) config3 (compatible with config1)
- mDut.connect(clientId3, uid, pid, callingPackage, mockCallback3, configRequest3, true);
+ mDut.connect(clientId3, uid, pid, callingPackage, callingFeature, mockCallback3,
+ configRequest3, true);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
crCapture.capture(), eq(true), eq(false), eq(true), eq(false));
@@ -2758,6 +2818,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
ArgumentCaptor<Short> transactionId = ArgumentCaptor.forClass(Short.class);
IWifiAwareEventCallback mockCallback = mock(IWifiAwareEventCallback.class);
@@ -2773,7 +2834,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) attach w/o identity
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
any(ConfigRequest.class), eq(false), eq(true), eq(true), eq(false));
@@ -2783,13 +2845,15 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
// (2) attach w/o identity
++clientId;
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectSuccess(clientId);
// (3) attach w/ identity
++clientId;
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, true);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, true);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
any(ConfigRequest.class), eq(true), eq(false), eq(true), eq(false));
@@ -2799,13 +2863,15 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
// (4) attach w/o identity
++clientId;
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectSuccess(clientId);
// (5) attach w/ identity
++clientId;
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, true);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, true);
mMockLooper.dispatchAll();
inOrder.verify(mockCallback).onConnectSuccess(clientId);
@@ -2821,6 +2887,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int clusterLow = 5;
final int clusterHigh = 100;
final int masterPref = 111;
@@ -2848,7 +2915,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -2897,6 +2965,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final int clusterLow = 15;
final int clusterHigh = 192;
final int masterPref = 234;
@@ -2923,7 +2992,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -2951,6 +3021,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -2967,7 +3038,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect (no response)
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -2987,6 +3059,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3001,7 +3074,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect and succeed
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -3037,6 +3111,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final byte publishId = 25;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3057,7 +3132,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(), eq(configRequest),
eq(false), eq(true), eq(true), eq(false));
@@ -3092,6 +3168,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final byte subscribeId = 25;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3112,7 +3189,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -3146,6 +3224,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
int loopCount = 100;
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3165,7 +3244,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -3202,6 +3282,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3219,7 +3300,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
mMockLooper.dispatchAll();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -3263,6 +3345,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
setSettableParam(WifiAwareStateManager.PARAM_ON_IDLE_DISABLE_AWARE, Integer.toString(1),
true);
@@ -3284,7 +3367,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
inOrder.verify(mMockNativeManager).releaseAware();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNativeManager).tryToGetAware();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
@@ -3341,6 +3425,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3359,7 +3444,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
inOrder.verify(mMockNativeManager).releaseAware();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNativeManager).tryToGetAware();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
@@ -3412,6 +3498,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
ConfigRequest configRequest = new ConfigRequest.Builder().build();
@@ -3430,7 +3517,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
inOrder.verify(mMockNativeManager).releaseAware();
// (1) connect
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNativeManager).tryToGetAware();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
@@ -3483,6 +3571,7 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
final int uid = 1000;
final int pid = 2000;
final String callingPackage = "com.google.somePackage";
+ final String callingFeature = "com.google.someFeature";
final ConfigRequest configRequest = new ConfigRequest.Builder().build();
IWifiAwareEventCallback mockCallback = mock(IWifiAwareEventCallback.class);
@@ -3499,7 +3588,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
collector.checkThat("usage enabled", mDut.isUsageEnabled(), equalTo(true));
// (1) connect client
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
@@ -3514,7 +3604,8 @@ public class WifiAwareStateManagerTest extends WifiBaseTest {
validateCorrectAwareStatusChangeBroadcast(inOrder);
// (3) try reconnect client
- mDut.connect(clientId, uid, pid, callingPackage, mockCallback, configRequest, false);
+ mDut.connect(clientId, uid, pid, callingPackage, callingFeature, mockCallback,
+ configRequest, false);
mMockLooper.dispatchAll();
inOrder.verify(mMockNative).enableAndConfigure(transactionId.capture(),
eq(configRequest), eq(false), eq(true), eq(true), eq(false));
diff --git a/tests/wifitests/src/com/android/server/wifi/p2p/WifiP2pServiceImplTest.java b/tests/wifitests/src/com/android/server/wifi/p2p/WifiP2pServiceImplTest.java
index bc51b6d4b..e5d1c3e68 100644
--- a/tests/wifitests/src/com/android/server/wifi/p2p/WifiP2pServiceImplTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/p2p/WifiP2pServiceImplTest.java
@@ -38,6 +38,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import android.annotation.Nullable;
import android.app.test.MockAnswerUtil.AnswerWithArguments;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -234,15 +235,17 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
* Mock send WifiP2pManager.UPDATE_CHANNEL_INFO
*
* @param pkgName package name used for p2p channel init
+ * @param featureId The feature in the package
* @param binder client binder used for p2p channel init
* @param replyMessenger for checking replied message.
*/
- private void sendChannelInfoUpdateMsg(String pkgName, Binder binder,
- Messenger replyMessenger) throws Exception {
+ private void sendChannelInfoUpdateMsg(String pkgName, @Nullable String featureId,
+ Binder binder, Messenger replyMessenger) throws Exception {
Message msg = Message.obtain();
msg.what = WifiP2pManager.UPDATE_CHANNEL_INFO;
Bundle bundle = new Bundle();
bundle.putString(WifiP2pManager.CALLING_PACKAGE, pkgName);
+ bundle.putString(WifiP2pManager.CALLING_FEATURE_ID, featureId);
bundle.putBinder(WifiP2pManager.CALLING_BINDER, binder);
msg.obj = bundle;
msg.replyTo = replyMessenger;
@@ -879,7 +882,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddLocalServiceMsg(mClientMessenger);
assertTrue(mClientHandler.hasMessages(WifiP2pManager.ADD_LOCAL_SERVICE_FAILED));
verify(mWifiNative, never()).p2pServiceAdd(any());
@@ -894,13 +897,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
when(mWifiPermissionsUtil.checkCanAccessWifiDirect(
- anyString(), anyInt(), anyBoolean())).thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ anyString(), anyString(), anyInt(), anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddLocalServiceMsg(mClientMessenger);
assertTrue(mClientHandler.hasMessages(WifiP2pManager.ADD_LOCAL_SERVICE_FAILED));
verify(mWifiNative, never()).p2pServiceAdd(any());
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
}
/**
@@ -909,15 +912,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testAddLocalServiceSuccess() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pServiceAdd(any())).thenReturn(true);
sendAddLocalServiceMsg(mClientMessenger);
verify(mWifiNative).p2pServiceAdd(any());
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.ADD_LOCAL_SERVICE_SUCCEEDED));
}
@@ -927,15 +930,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testAddLocalServiceFailureWhenNativeCallFailure() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pServiceAdd(any())).thenReturn(false);
sendAddLocalServiceMsg(mClientMessenger);
verify(mWifiNative).p2pServiceAdd(any());
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.ADD_LOCAL_SERVICE_FAILED));
}
@@ -961,7 +964,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendConnectMsgWithConfigValidAsGroup(mClientMessenger);
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CONNECT_FAILED));
verify(mWifiNative, never()).p2pGroupAdd(any(), anyBoolean());
@@ -975,14 +978,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testConnectWithConfigValidAsGroupFailureWhenPermissionDenied() throws Exception {
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendConnectMsgWithConfigValidAsGroup(mClientMessenger);
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CONNECT_FAILED));
verify(mWifiNative, never()).p2pGroupAdd(any(), anyBoolean());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
}
/**
@@ -991,14 +994,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testConnectWithConfigValidAsGroupSuccess() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
when(mWifiNative.p2pGroupAdd(any(), eq(true))).thenReturn(true);
sendConnectMsgWithConfigValidAsGroup(mClientMessenger);
verify(mWifiNative).p2pGroupAdd(any(), eq(true));
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CONNECT_SUCCEEDED));
}
@@ -1008,14 +1011,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testConnectWithConfigValidAsGroupFailureWhenNativeCallFailure() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
when(mWifiNative.p2pGroupAdd(any(), eq(true))).thenReturn(false);
sendConnectMsgWithConfigValidAsGroup(mClientMessenger);
verify(mWifiNative).p2pGroupAdd(any(), eq(true));
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CONNECT_FAILED));
}
@@ -1043,7 +1046,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendCreateGroupMsgWithConfigValidAsGroup(mClientMessenger);
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CREATE_GROUP_FAILED));
verify(mWifiNative, never()).p2pGroupAdd(anyBoolean());
@@ -1059,15 +1062,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
throws Exception {
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendCreateGroupMsgWithConfigValidAsGroup(mClientMessenger);
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CREATE_GROUP_FAILED));
verify(mWifiNative, never()).p2pGroupAdd(anyBoolean());
verify(mWifiNative, never()).p2pGroupAdd(any(), anyBoolean());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
}
/**
@@ -1076,14 +1079,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testCreateGroupWithConfigValidAsGroupSuccess() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
when(mWifiNative.p2pGroupAdd(any(), eq(false))).thenReturn(true);
sendCreateGroupMsgWithConfigValidAsGroup(mClientMessenger);
verify(mWifiNative).p2pGroupAdd(any(), eq(false));
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CREATE_GROUP_SUCCEEDED));
}
@@ -1094,14 +1097,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testCreateGroupWithConfigValidAsGroupFailureWhenNativeCallFailure()
throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
when(mWifiNative.p2pGroupAdd(any(), eq(false))).thenReturn(false);
sendCreateGroupMsgWithConfigValidAsGroup(mClientMessenger);
verify(mWifiNative).p2pGroupAdd(any(), eq(false));
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.CREATE_GROUP_FAILED));
}
@@ -1126,7 +1129,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiNative, never()).p2pFind(anyInt());
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_PEERS_FAILED));
@@ -1140,13 +1143,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testDiscoverPeersFailureWhenPermissionDenied() throws Exception {
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiNative, never()).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_PEERS_FAILED));
}
@@ -1158,15 +1161,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testDiscoverPeersFailureWhenLocationModeDisabled() throws Exception {
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), eq(false)))
- .thenReturn(true);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), eq(true)))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ eq(false))).thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ eq(true))).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiNative, never()).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_PEERS_FAILED));
}
@@ -1176,14 +1179,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testDiscoverPeersSuccess() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pFind(anyInt())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiNative).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_PEERS_SUCCEEDED));
}
@@ -1193,14 +1196,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testDiscoverPeersFailureWhenNativeCallFailure() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pFind(anyInt())).thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiNative).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_PEERS_FAILED));
}
@@ -1230,7 +1233,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiNative, never()).p2pServDiscReq(anyString(), anyString());
@@ -1248,15 +1251,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
.thenReturn("mServiceDiscReqId");
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiNative, never()).p2pServDiscReq(anyString(), anyString());
verify(mWifiNative, never()).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_SERVICES_FAILED));
}
@@ -1270,17 +1273,17 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
.thenReturn("mServiceDiscReqId");
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), eq(false)))
- .thenReturn(true);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), eq(true)))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ eq(false))).thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ eq(true))).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiNative, never()).p2pServDiscReq(anyString(), anyString());
verify(mWifiNative, never()).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_SERVICES_FAILED));
}
@@ -1293,15 +1296,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
.thenReturn("mServiceDiscReqId");
when(mWifiNative.p2pFind(anyInt())).thenReturn(true);
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiNative).p2pServDiscReq(anyString(), anyString());
verify(mWifiNative).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_SERVICES_SUCCEEDED));
}
@@ -1312,15 +1315,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testDiscoverServicesFailureWhenAddServiceRequestFailure() throws Exception {
when(mWifiNative.p2pServDiscReq(anyString(), anyString())).thenReturn(null);
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiNative).p2pServDiscReq(anyString(), anyString());
verify(mWifiNative, never()).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_SERVICES_FAILED));
}
@@ -1333,15 +1336,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
.thenReturn("mServiceDiscReqId");
when(mWifiNative.p2pFind(anyInt())).thenReturn(false);
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiNative).p2pServDiscReq(anyString(), anyString());
verify(mWifiNative).p2pFind(anyInt());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
assertTrue(mClientHandler.hasMessages(WifiP2pManager.DISCOVER_SERVICES_FAILED));
}
@@ -1371,7 +1374,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
mockPeersList();
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestPeersMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
WifiP2pDeviceList peers = (WifiP2pDeviceList) mMessageCaptor.getValue().obj;
@@ -1388,13 +1391,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
mockPeersList();
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestPeersMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
WifiP2pDeviceList peers = (WifiP2pDeviceList) mMessageCaptor.getValue().obj;
assertEquals(WifiP2pManager.RESPONSE_PEERS, mMessageCaptor.getValue().what);
assertNull(peers.get(mTestWifiP2pDevice.deviceAddress));
@@ -1410,15 +1413,15 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
mockPeersList();
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), eq(false)))
- .thenReturn(true);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), eq(true)))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ eq(false))).thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ eq(true))).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestPeersMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
WifiP2pDeviceList peers = (WifiP2pDeviceList) mMessageCaptor.getValue().obj;
assertEquals(WifiP2pManager.RESPONSE_PEERS, mMessageCaptor.getValue().what);
assertNull(peers.get(mTestWifiP2pDevice.deviceAddress));
@@ -1433,13 +1436,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testRequestPeersSuccess() throws Exception {
forceP2pEnabled(mClient1);
mockPeersList();
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestPeersMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
WifiP2pDeviceList peers = (WifiP2pDeviceList) mMessageCaptor.getValue().obj;
assertEquals(WifiP2pManager.RESPONSE_PEERS, mMessageCaptor.getValue().what);
assertNotEquals(null, peers.get(mTestWifiP2pDevice.deviceAddress));
@@ -1469,7 +1472,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
sendGroupStartedMsg(mTestWifiP2pGroup);
doThrow(new SecurityException("P2p unit test"))
.when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestGroupInfoMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
assertEquals(WifiP2pManager.RESPONSE_GROUP_INFO, mMessageCaptor.getValue().what);
@@ -1485,13 +1488,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
sendGroupStartedMsg(mTestWifiP2pGroup);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestGroupInfoMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertEquals(WifiP2pManager.RESPONSE_GROUP_INFO, mMessageCaptor.getValue().what);
assertNull(mMessageCaptor.getValue().obj);
}
@@ -1506,13 +1509,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
sendGroupStartedMsg(mTestWifiP2pGroup);
when(mWifiPermissionsUtil.checkLocalMacAddressPermission(anyInt())).thenReturn(false);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestGroupInfoMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertEquals(WifiP2pManager.RESPONSE_GROUP_INFO, mMessageCaptor.getValue().what);
WifiP2pGroup wifiP2pGroup = (WifiP2pGroup) mMessageCaptor.getValue().obj;
assertEquals(mTestWifiP2pGroup.getNetworkName(), wifiP2pGroup.getNetworkName());
@@ -1530,13 +1533,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
forceP2pEnabled(mClient1);
sendGroupStartedMsg(mTestWifiP2pGroup);
when(mWifiPermissionsUtil.checkLocalMacAddressPermission(anyInt())).thenReturn(true);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendRequestGroupInfoMsg(mClientMessenger);
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
assertEquals(WifiP2pManager.RESPONSE_GROUP_INFO, mMessageCaptor.getValue().what);
WifiP2pGroup wifiP2pGroup = (WifiP2pGroup) mMessageCaptor.getValue().obj;
assertEquals(thisDeviceMac, wifiP2pGroup.getOwner().deviceAddress);
@@ -1694,14 +1697,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testPeerScanMetricWhenSendDiscoverPeers() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pFind(anyInt())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiP2pMetrics).incrementPeerScans();
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
}
/**
@@ -1714,14 +1717,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
.thenReturn("mServiceDiscReqId");
when(mWifiNative.p2pFind(anyInt())).thenReturn(true);
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
sendDiscoverServiceMsg(mClientMessenger);
verify(mWifiP2pMetrics).incrementServiceScans();
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(true));
}
/**
@@ -1731,7 +1734,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testPersistentGroupMetricWhenSendFactoryReset() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
// permissions for factory reset
when(mWifiPermissionsUtil.checkNetworkSettingsPermission(anyInt()))
@@ -1760,7 +1763,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testPersistentGroupMetricWhenSendP2pGroupStartedEvent() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
ArgumentCaptor<WifiP2pGroupList> groupsCaptor =
ArgumentCaptor.forClass(WifiP2pGroupList.class);
@@ -1781,7 +1784,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testPersistentGroupMetricWhenSendDeletePersistentGroup() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
ArgumentCaptor<WifiP2pGroupList> groupsCaptor =
ArgumentCaptor.forClass(WifiP2pGroupList.class);
@@ -1801,7 +1804,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testGroupEventMetric() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendGroupStartedMsg(mTestWifiP2pNewPersistentGoGroup);
@@ -1821,14 +1824,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testStartFreshConnectionEventWhenSendConnect() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockPeersList();
sendConnectMsg(mClientMessenger, mTestWifiP2pPeerConfig);
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
ArgumentCaptor<WifiP2pConfig> configCaptor =
ArgumentCaptor.forClass(WifiP2pConfig.class);
@@ -1844,19 +1847,19 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testStartReinvokeConnectionEventWhenSendConnect() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(anyInt()))
.thenReturn(true);
when(mTestWifiP2pDevice.isGroupOwner()).thenReturn(true);
when(mWifiNative.p2pGetSsid(eq(mTestWifiP2pDevice.deviceAddress)))
.thenReturn(mTestWifiP2pGroup.getNetworkName());
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockPeersList();
sendConnectMsg(mClientMessenger, mTestWifiP2pPeerConfig);
verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ .checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"), anyInt(), eq(false));
ArgumentCaptor<WifiP2pConfig> configCaptor =
ArgumentCaptor.forClass(WifiP2pConfig.class);
@@ -1877,13 +1880,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testStartReinvokeConnectionEventWhenCreateGroup()
throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendCreateGroupMsg(mClientMessenger, WifiP2pGroup.PERSISTENT_NET_ID, null);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mWifiP2pMetrics).startConnectionEvent(
eq(P2pConnectionEvent.CONNECTION_REINVOKE),
@@ -1897,9 +1900,9 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testStartLocalConnectionWhenCreateGroup() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
// permissions for factory reset
when(mWifiPermissionsUtil.checkNetworkSettingsPermission(anyInt()))
@@ -1914,8 +1917,8 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
sendSimpleMsg(mClientMessenger, WifiP2pManager.FACTORY_RESET);
sendCreateGroupMsg(mClientMessenger, WifiP2pGroup.PERSISTENT_NET_ID, null);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mWifiP2pMetrics).startConnectionEvent(
eq(P2pConnectionEvent.CONNECTION_LOCAL),
@@ -1929,13 +1932,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testStartLocalConnectionEventWhenCreateTemporaryGroup() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendCreateGroupMsg(mClientMessenger, WifiP2pGroup.TEMPORARY_NET_ID, null);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mWifiP2pMetrics).startConnectionEvent(
eq(P2pConnectionEvent.CONNECTION_LOCAL),
@@ -1950,14 +1953,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testStartFastConnectionEventWhenSendConnectWithConfig()
throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(any(), eq(true))).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendConnectMsg(mClientMessenger, mTestWifiP2pFastConnectionConfig);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
ArgumentCaptor<WifiP2pConfig> configCaptor =
ArgumentCaptor.forClass(WifiP2pConfig.class);
@@ -1976,13 +1979,13 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testStartFastConnectionEventWhenCreateGroupWithConfig()
throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendCreateGroupMsg(mClientMessenger, 0, mTestWifiP2pFastConnectionConfig);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
ArgumentCaptor<WifiP2pConfig> configCaptor =
ArgumentCaptor.forClass(WifiP2pConfig.class);
@@ -1999,7 +2002,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testEndConnectionEventWhenGroupFormed() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
WifiP2pGroup group = new WifiP2pGroup();
group.setNetworkId(WifiP2pGroup.PERSISTENT_NET_ID);
@@ -2017,14 +2020,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testEndConnectionEventWhenTimeout() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(anyBoolean())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockEnterGroupNegotiationState();
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
mLooper.moveTimeForward(120 * 1000 * 2);
mLooper.dispatchAll();
@@ -2039,14 +2042,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testEndConnectionEventWhenCancel() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(anyBoolean())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockEnterGroupNegotiationState();
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
sendSimpleMsg(mClientMessenger, WifiP2pManager.CANCEL_CONNECT);
@@ -2060,14 +2063,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testEndConnectionEventWhenProvDiscFailure() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(anyBoolean())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockEnterProvisionDiscoveryState();
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
sendSimpleMsg(null, WifiP2pMonitor.P2P_PROV_DISC_FAILURE_EVENT);
@@ -2081,14 +2084,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testEndConnectionEventWhenGroupRemoval() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(anyBoolean())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockEnterGroupNegotiationState();
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
sendSimpleMsg(null, WifiP2pMonitor.P2P_GROUP_REMOVED_EVENT);
@@ -2102,14 +2105,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testEndConnectionEventWhenInvitationFailure() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
when(mWifiNative.p2pGroupAdd(anyBoolean())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
mockEnterGroupNegotiationState();
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
sendInvitationResultMsg(WifiP2pServiceImpl.P2pStatus.UNKNOWN);
@@ -2125,12 +2128,12 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testRequestDeviceInfoFailureWhenPermissionDenied() throws Exception {
forceP2pEnabled(mClient1);
doNothing().when(mWifiPermissionsUtil).checkPackage(anyInt(), anyString());
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(false);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(false);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendSimpleMsg(mClientMessenger, WifiP2pManager.REQUEST_DEVICE_INFO);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
assertEquals(WifiP2pManager.RESPONSE_DEVICE_INFO, mMessageCaptor.getValue().what);
assertNull(mMessageCaptor.getValue().obj);
@@ -2143,12 +2146,12 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testRequestDeviceInfoSuccessWhenP2pEnabled() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendSimpleMsg(mClientMessenger, WifiP2pManager.REQUEST_DEVICE_INFO);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
assertEquals(WifiP2pManager.RESPONSE_DEVICE_INFO, mMessageCaptor.getValue().what);
WifiP2pDevice wifiP2pDevice = (WifiP2pDevice) mMessageCaptor.getValue().obj;
@@ -2162,12 +2165,12 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
*/
@Test
public void testRequestDeviceInfoReturnEmptyWifiP2pDeviceWhenP2pDisabled() throws Exception {
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendSimpleMsg(mClientMessenger, WifiP2pManager.REQUEST_DEVICE_INFO);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
assertEquals(WifiP2pManager.RESPONSE_DEVICE_INFO, mMessageCaptor.getValue().what);
WifiP2pDevice wifiP2pDevice = (WifiP2pDevice) mMessageCaptor.getValue().obj;
@@ -2183,12 +2186,12 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
public void testRequestDeviceInfoReturnsActualMacForNetworkSettingsApp() throws Exception {
forceP2pEnabled(mClient1);
when(mWifiPermissionsUtil.checkLocalMacAddressPermission(anyInt())).thenReturn(true);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyInt(), anyBoolean()))
- .thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(anyString(), anyString(), anyInt(),
+ anyBoolean())).thenReturn(true);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendSimpleMsg(mClientMessenger, WifiP2pManager.REQUEST_DEVICE_INFO);
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(false));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(false));
verify(mClientHandler).sendMessage(mMessageCaptor.capture());
assertEquals(WifiP2pManager.RESPONSE_DEVICE_INFO, mMessageCaptor.getValue().what);
WifiP2pDevice wifiP2pDevice = (WifiP2pDevice) mMessageCaptor.getValue().obj;
@@ -3426,14 +3429,14 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testRequestDiscoveryStateWhenStarted() throws Exception {
forceP2pEnabled(mClient1);
- when(mWifiPermissionsUtil.checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), anyBoolean()))
- .thenReturn(true);
+ when(mWifiPermissionsUtil.checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), anyBoolean())).thenReturn(true);
when(mWifiNative.p2pFind(anyInt())).thenReturn(true);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendDiscoverPeersMsg(mClientMessenger);
verify(mWifiNative).p2pFind(anyInt());
- verify(mWifiPermissionsUtil)
- .checkCanAccessWifiDirect(eq("testPkg1"), anyInt(), eq(true));
+ verify(mWifiPermissionsUtil).checkCanAccessWifiDirect(eq("testPkg1"), eq("testFeature"),
+ anyInt(), eq(true));
sendSimpleMsg(mClientMessenger, WifiP2pManager.REQUEST_DISCOVERY_STATE);
@@ -3619,7 +3622,7 @@ public class WifiP2pServiceImplTest extends WifiBaseTest {
@Test
public void testAddServiceRequestSuccessWithoutServiceDiscover() throws Exception {
forceP2pEnabled(mClient1);
- sendChannelInfoUpdateMsg("testPkg1", mClient1, mClientMessenger);
+ sendChannelInfoUpdateMsg("testPkg1", "testFeature", mClient1, mClientMessenger);
sendAddServiceRequestMsg(mClientMessenger);
diff --git a/tests/wifitests/src/com/android/server/wifi/rtt/RttServiceImplTest.java b/tests/wifitests/src/com/android/server/wifi/rtt/RttServiceImplTest.java
index 76f8b0f63..a355540ff 100644
--- a/tests/wifitests/src/com/android/server/wifi/rtt/RttServiceImplTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/rtt/RttServiceImplTest.java
@@ -29,6 +29,7 @@ import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doNothing;
@@ -110,6 +111,7 @@ public class RttServiceImplTest extends WifiBaseTest {
private BroadcastReceiver mLocationModeReceiver;
private final String mPackageName = "some.package.name.for.rtt.app";
+ private final String mFeatureId = "some.feature.name.for.rtt.app";
private int mDefaultUid = 1500;
private WorkSource mDefaultWs = new WorkSource(mDefaultUid);
@@ -205,8 +207,8 @@ public class RttServiceImplTest extends WifiBaseTest {
when(mockActivityManager.getUidImportance(anyInt())).thenReturn(
ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND_SERVICE);
- when(mockPermissionUtil.checkCallersLocationPermission(eq(mPackageName),
- anyInt(), anyBoolean())).thenReturn(true);
+ when(mockPermissionUtil.checkCallersLocationPermission(eq(mPackageName), eq(mFeatureId),
+ anyInt(), anyBoolean(), nullable(String.class))).thenReturn(true);
when(mockPermissionUtil.isLocationModeEnabled()).thenReturn(true);
when(mockNative.isReady()).thenReturn(true);
when(mockNative.rangeRequest(anyInt(), any(RangingRequest.class), anyBoolean())).thenReturn(
@@ -265,7 +267,8 @@ public class RttServiceImplTest extends WifiBaseTest {
// (1) request 10 ranging operations
for (int i = 0; i < numIter; ++i) {
- mDut.startRanging(mockIbinder, mPackageName, null, requests[i], mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, requests[i],
+ mockCallback);
}
mMockLooper.dispatchAll();
@@ -324,7 +327,7 @@ public class RttServiceImplTest extends WifiBaseTest {
doAnswer(answer).when(mockAwareManagerBinder).requestMacAddresses(anyInt(), any(), any());
// issue request
- mDut.startRanging(mockIbinder, mPackageName, null, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request, mockCallback);
mMockLooper.dispatchAll();
// verify that requested with MAC address translated from the PeerHandle issued to Native
@@ -386,13 +389,14 @@ public class RttServiceImplTest extends WifiBaseTest {
// (1) request 10 ranging operations: fail the first one
when(mockNative.rangeRequest(anyInt(), any(RangingRequest.class), anyBoolean())).thenReturn(
false);
- mDut.startRanging(mockIbinder, mPackageName, null, requests[0], mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, requests[0], mockCallback);
mMockLooper.dispatchAll();
when(mockNative.rangeRequest(anyInt(), any(RangingRequest.class), anyBoolean())).thenReturn(
true);
for (int i = 1; i < numIter; ++i) {
- mDut.startRanging(mockIbinder, mPackageName, null, requests[i], mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, requests[i],
+ mockCallback);
}
mMockLooper.dispatchAll();
@@ -444,7 +448,7 @@ public class RttServiceImplTest extends WifiBaseTest {
RttTestUtils.getDummyRangingResults(request);
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, null, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request, mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -452,8 +456,8 @@ public class RttServiceImplTest extends WifiBaseTest {
verifyWakeupSet(true, 0);
// (3) native calls back with result - should get a FAILED callback
- when(mockPermissionUtil.checkCallersLocationPermission(eq(mPackageName),
- anyInt(), anyBoolean())).thenReturn(false);
+ when(mockPermissionUtil.checkCallersLocationPermission(eq(mPackageName), eq(mFeatureId),
+ anyInt(), anyBoolean(), nullable(String.class))).thenReturn(false);
mDut.onRangingResults(mIntCaptor.getValue(), results.second);
mMockLooper.dispatchAll();
@@ -489,7 +493,8 @@ public class RttServiceImplTest extends WifiBaseTest {
// (1) request 10 ranging operations: even/odd with different UIDs
for (int i = 0; i < numIter; ++i) {
mDut.fakeUid = mDefaultUid + i % 2;
- mDut.startRanging(mockIbinder, mPackageName, null, requests[i], mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, requests[i],
+ mockCallback);
}
mMockLooper.dispatchAll();
@@ -564,7 +569,7 @@ public class RttServiceImplTest extends WifiBaseTest {
RttTestUtils.getDummyRangingResults(request);
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, ws, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, ws, request, mockCallback);
mMockLooper.dispatchAll();
verify(mockIbinder).linkToDeath(mDeathRecipientCaptor.capture(), anyInt());
@@ -614,7 +619,8 @@ public class RttServiceImplTest extends WifiBaseTest {
RttTestUtils.getDummyRangingResults(request);
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, worksourceRequest, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, worksourceRequest, request,
+ mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -660,7 +666,8 @@ public class RttServiceImplTest extends WifiBaseTest {
RttTestUtils.getDummyRangingResults(request);
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, worksourceRequest, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, worksourceRequest, request,
+ mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -698,7 +705,7 @@ public class RttServiceImplTest extends WifiBaseTest {
RttTestUtils.getDummyRangingResults(request);
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, null, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request, mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -749,7 +756,7 @@ public class RttServiceImplTest extends WifiBaseTest {
null, null, null, 0));
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, null, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request, mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -792,7 +799,7 @@ public class RttServiceImplTest extends WifiBaseTest {
}
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, null, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request, mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -845,7 +852,7 @@ public class RttServiceImplTest extends WifiBaseTest {
PackageManager.PERMISSION_DENIED);
// (1) request ranging operation
- mDut.startRanging(mockIbinder, mPackageName, null, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request, mockCallback);
mMockLooper.dispatchAll();
// (2) verify that request issued to native
@@ -885,8 +892,8 @@ public class RttServiceImplTest extends WifiBaseTest {
RttTestUtils.getDummyRangingResults(request2);
// (1) request 2 ranging operation
- mDut.startRanging(mockIbinder, mPackageName, null, request1, mockCallback);
- mDut.startRanging(mockIbinder, mPackageName, null, request2, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request1, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request2, mockCallback);
mMockLooper.dispatchAll();
// verify that request 1 issued to native
@@ -957,7 +964,7 @@ public class RttServiceImplTest extends WifiBaseTest {
// (1) issue a request at time t1: should be dispatched since first one!
clock.time = 100;
- mDut.startRanging(mockIbinder, mPackageName, null, request1, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request1, mockCallback);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request1), eq(true));
@@ -972,14 +979,14 @@ public class RttServiceImplTest extends WifiBaseTest {
// (2) issue a request at time t2 = t1 + 0.5 gap: should be rejected (throttled)
clock.time = 100 + BACKGROUND_PROCESS_EXEC_GAP_MS / 2;
- mDut.startRanging(mockIbinder, mPackageName, null, request2, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request2, mockCallback);
mMockLooper.dispatchAll();
cbInorder.verify(mockCallback).onRangingFailure(RangingResultCallback.STATUS_CODE_FAIL);
// (3) issue a request at time t3 = t1 + 1.1 gap: should be dispatched since enough time
clock.time = 100 + BACKGROUND_PROCESS_EXEC_GAP_MS * 11 / 10;
- mDut.startRanging(mockIbinder, mPackageName, null, request3, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request3, mockCallback);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request3), eq(true));
@@ -997,7 +1004,7 @@ public class RttServiceImplTest extends WifiBaseTest {
ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND);
clock.time = clock.time + 5;
- mDut.startRanging(mockIbinder, mPackageName, null, request4, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request4, mockCallback);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request4), eq(true));
@@ -1015,7 +1022,7 @@ public class RttServiceImplTest extends WifiBaseTest {
ActivityManager.RunningAppProcessInfo.IMPORTANCE_GONE);
clock.time = clock.time + 5;
- mDut.startRanging(mockIbinder, mPackageName, null, request5, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request5, mockCallback);
mMockLooper.dispatchAll();
cbInorder.verify(mockCallback).onRangingFailure(RangingResultCallback.STATUS_CODE_FAIL);
@@ -1088,7 +1095,7 @@ public class RttServiceImplTest extends WifiBaseTest {
// (1) issue a request at time t1 for {10}: should be dispatched since first one!
clock.time = 100;
- mDut.startRanging(mockIbinder, mPackageName, wsReq1, request1, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, wsReq1, request1, mockCallback);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request1), eq(true));
@@ -1104,7 +1111,7 @@ public class RttServiceImplTest extends WifiBaseTest {
// (2) issue a request at time t2 = t1 + 0.5 gap for {10,20}: should be dispatched since
// uid=20 should not be throttled
clock.time = 100 + BACKGROUND_PROCESS_EXEC_GAP_MS / 2;
- mDut.startRanging(mockIbinder, mPackageName, wsReq2, request2, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, wsReq2, request2, mockCallback);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request2), eq(true));
@@ -1119,7 +1126,7 @@ public class RttServiceImplTest extends WifiBaseTest {
// (3) issue a request at t3 = t1 + 1.1 * gap for {10}: should be rejected (throttled)
clock.time = 100 + BACKGROUND_PROCESS_EXEC_GAP_MS * 11 / 10;
- mDut.startRanging(mockIbinder, mPackageName, wsReq1, request3, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, wsReq1, request3, mockCallback);
mMockLooper.dispatchAll();
cbInorder.verify(mockCallback).onRangingFailure(RangingResultCallback.STATUS_CODE_FAIL);
@@ -1173,7 +1180,7 @@ public class RttServiceImplTest extends WifiBaseTest {
WorkSource ws = new WorkSource(10);
// 1. issue a request
- mDut.startRanging(mockIbinder, mPackageName, ws, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, ws, request, mockCallback);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request), eq(true));
@@ -1183,7 +1190,8 @@ public class RttServiceImplTest extends WifiBaseTest {
for (int i = 0; i < RttServiceImpl.MAX_QUEUED_PER_UID + 10; ++i) {
WorkSource wsExtra = new WorkSource(ws);
wsExtra.add(11 + i);
- mDut.startRanging(mockIbinder, mPackageName, wsExtra, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, wsExtra, request,
+ mockCallback);
}
mMockLooper.dispatchAll();
@@ -1239,7 +1247,8 @@ public class RttServiceImplTest extends WifiBaseTest {
InOrder nativeInorder = inOrder(mockNative);
// 1. issue a request
- mDut.startRanging(mockIbinder, mPackageName, useUids ? null : ws, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, useUids ? null : ws, request,
+ mockCallback);
mMockLooper.dispatchAll();
nativeInorder.verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request), eq(true));
@@ -1247,7 +1256,7 @@ public class RttServiceImplTest extends WifiBaseTest {
// 2. issue FLOOD LEVEL requests + 10: should get 11 failures (10 extra + 1 original)
for (int i = 0; i < RttServiceImpl.MAX_QUEUED_PER_UID + 10; ++i) {
- mDut.startRanging(mockIbinder, mPackageName, useUids ? null : ws, request,
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, useUids ? null : ws, request,
mockCallback);
}
mMockLooper.dispatchAll();
@@ -1266,7 +1275,8 @@ public class RttServiceImplTest extends WifiBaseTest {
verifyWakeupSet(true, 0);
// 4. issue a request: don't expect a failure
- mDut.startRanging(mockIbinder, mPackageName, useUids ? null : ws, request, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, useUids ? null : ws, request,
+ mockCallback);
mMockLooper.dispatchAll();
// 5. clear queue
@@ -1338,8 +1348,8 @@ public class RttServiceImplTest extends WifiBaseTest {
IRttCallback mockCallback3 = mock(IRttCallback.class);
// (1) request 2 ranging operations: request 1 should be sent to HAL
- mDut.startRanging(mockIbinder, mPackageName, null, request1, mockCallback);
- mDut.startRanging(mockIbinder, mPackageName, null, request2, mockCallback2);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request1, mockCallback);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request2, mockCallback2);
mMockLooper.dispatchAll();
verify(mockNative).rangeRequest(mIntCaptor.capture(), eq(request1), eq(true));
@@ -1367,7 +1377,7 @@ public class RttServiceImplTest extends WifiBaseTest {
verifyWakeupCancelled();
// (3) issue another request: it should fail
- mDut.startRanging(mockIbinder, mPackageName, null, request3, mockCallback3);
+ mDut.startRanging(mockIbinder, mPackageName, mFeatureId, null, request3, mockCallback3);
mMockLooper.dispatchAll();
verify(mockCallback3).onRangingFailure(
diff --git a/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java b/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java
index 397c61d2d..666028a98 100644
--- a/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/scanner/WifiScanningServiceTest.java
@@ -29,8 +29,7 @@ import static com.android.server.wifi.ScanTestUtil.channelsToSpec;
import static com.android.server.wifi.ScanTestUtil.computeSingleScanNativeSettings;
import static com.android.server.wifi.ScanTestUtil.createRequest;
import static com.android.server.wifi.ScanTestUtil.createSingleScanNativeSettingsForChannels;
-import static com.android.server.wifi.scanner.WifiScanningServiceImpl.WifiSingleScanStateMachine
- .CACHED_SCAN_RESULTS_MAX_AGE_IN_MILLIS;
+import static com.android.server.wifi.scanner.WifiScanningServiceImpl.WifiSingleScanStateMachine.CACHED_SCAN_RESULTS_MAX_AGE_IN_MILLIS;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@@ -122,6 +121,7 @@ public class WifiScanningServiceTest extends WifiBaseTest {
private static final int TEST_MAX_SCAN_BUCKETS_IN_CAPABILITIES = 8;
private static final String TEST_PACKAGE_NAME = "com.test.123";
+ private static final String TEST_FEATURE_ID = "test.feature";
private static final String TEST_IFACE_NAME_0 = "wlan0";
private static final String TEST_IFACE_NAME_1 = "wlan1";
private static final WifiScanner.ScanData DUMMY_SCAN_DATA =
@@ -2690,7 +2690,7 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Location permission or mode check fail.
doThrow(new SecurityException()).when(mWifiPermissionsUtil)
- .enforceCanAccessScanResultsForWifiScanner(any(), eq(Binder.getCallingUid()),
+ .enforceCanAccessScanResultsForWifiScanner(any(), any(), eq(Binder.getCallingUid()),
eq(false), eq(false));
Handler handler = mock(Handler.class);
@@ -2751,6 +2751,7 @@ public class WifiScanningServiceTest extends WifiBaseTest {
Bundle bundle = new Bundle();
bundle.putString(WifiScanner.REQUEST_PACKAGE_NAME_KEY, TEST_PACKAGE_NAME);
+ bundle.putString(WifiScanner.REQUEST_FEATURE_ID_KEY, TEST_FEATURE_ID);
WifiScanner.ScanSettings scanSettings = new WifiScanner.ScanSettings();
// send single scan request (ignoreLocationSettings == true).
@@ -2764,7 +2765,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify the permission check params (ignoreLocationSettings == true).
verify(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), eq(true), eq(false));
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()), eq(true),
+ eq(false));
// send single scan request (ignoreLocationSettings == false).
scanSettings.ignoreLocationSettings = false;
@@ -2777,7 +2779,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify the permission check params (ignoreLocationSettings == true).
verify(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), eq(false), eq(false));
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()), eq(false),
+ eq(false));
// send background scan request (ignoreLocationSettings == true).
scanSettings.ignoreLocationSettings = true;
@@ -2790,7 +2793,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify the permission check params (ignoreLocationSettings == false), the field
// is ignored for any requests other than single scan.
verify(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), eq(false), eq(false));
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()), eq(false),
+ eq(false));
}
/**
@@ -2815,6 +2819,7 @@ public class WifiScanningServiceTest extends WifiBaseTest {
Bundle bundle = new Bundle();
bundle.putString(WifiScanner.REQUEST_PACKAGE_NAME_KEY, TEST_PACKAGE_NAME);
+ bundle.putString(WifiScanner.REQUEST_FEATURE_ID_KEY, TEST_FEATURE_ID);
WifiScanner.ScanSettings scanSettings = new WifiScanner.ScanSettings();
// send single scan request (hideFromAppOps == true).
@@ -2828,7 +2833,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify the permission check params (hideFromAppOps == true).
verify(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), eq(false), eq(true));
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()), eq(false),
+ eq(true));
// send single scan request (hideFromAppOps == false).
scanSettings.hideFromAppOps = false;
@@ -2841,7 +2847,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify the permission check params (hideFromAppOps == false).
verify(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), eq(false), eq(false));
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()), eq(false),
+ eq(false));
// send background scan request (hideFromAppOps == true).
scanSettings.hideFromAppOps = true;
@@ -2854,7 +2861,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify the permission check params (hideFromAppOps == false), the field
// is ignored for any requests other than single scan.
verify(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), eq(false), eq(false));
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()), eq(false),
+ eq(false));
}
/**
@@ -2878,6 +2886,7 @@ public class WifiScanningServiceTest extends WifiBaseTest {
Bundle bundle = new Bundle();
bundle.putString(WifiScanner.REQUEST_PACKAGE_NAME_KEY, TEST_PACKAGE_NAME);
+ bundle.putString(WifiScanner.REQUEST_FEATURE_ID_KEY, TEST_FEATURE_ID);
WifiScanner.ScanSettings scanSettings = new WifiScanner.ScanSettings();
// send single scan request (hideFromAppOps == true, ignoreLocationSettings = true).
@@ -2892,7 +2901,8 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Verify that we didn't invoke the location permission check.
verify(mWifiPermissionsUtil, never()).enforceCanAccessScanResultsForWifiScanner(
- eq(TEST_PACKAGE_NAME), eq(Binder.getCallingUid()), anyBoolean(), anyBoolean());
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), eq(Binder.getCallingUid()),
+ anyBoolean(), anyBoolean());
}
/**
@@ -3508,10 +3518,10 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// Location permission or mode check fail.
doThrow(new SecurityException())
.when(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- TEST_PACKAGE_NAME, Binder.getCallingUid(), false, false);
+ TEST_PACKAGE_NAME, TEST_FEATURE_ID, Binder.getCallingUid(), false, false);
mWifiScanningServiceImpl.getAvailableChannels(WifiScanner.WIFI_BAND_24_GHZ,
- TEST_PACKAGE_NAME);
+ TEST_PACKAGE_NAME, TEST_FEATURE_ID);
}
/**
@@ -3529,10 +3539,10 @@ public class WifiScanningServiceTest extends WifiBaseTest {
// has access scan results permission
doNothing().when(mWifiPermissionsUtil).enforceCanAccessScanResultsForWifiScanner(
- TEST_PACKAGE_NAME, Binder.getCallingUid(), false, false);
+ TEST_PACKAGE_NAME, TEST_FEATURE_ID, Binder.getCallingUid(), false, false);
Bundle bundle = mWifiScanningServiceImpl.getAvailableChannels(
- WifiScanner.WIFI_BAND_24_GHZ, TEST_PACKAGE_NAME);
+ WifiScanner.WIFI_BAND_24_GHZ, TEST_PACKAGE_NAME, TEST_FEATURE_ID);
List<Integer> actual = bundle.getIntegerArrayList(GET_AVAILABLE_CHANNELS_EXTRA);
List<Integer> expected = Arrays.asList(2400, 2450);
diff --git a/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java b/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java
index 8e3c1bb71..9bd3fe6f6 100644
--- a/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/util/WifiPermissionsUtilTest.java
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.doAnswer;
@@ -83,6 +84,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
private static final String TEST_WIFI_STACK_APK_NAME = "com.android.wifi";
private static final String TEST_PACKAGE_NAME = "com.google.somePackage";
+ private static final String TEST_FEATURE_ID = "com.google.someFeature";
private static final String INVALID_PACKAGE = "BAD_PACKAGE";
private static final int MANAGED_PROFILE_UID = 1100000;
private static final int OTHER_USER_UID = 1200000;
@@ -177,7 +179,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -199,7 +201,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -216,7 +218,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -243,7 +246,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -264,7 +267,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -288,7 +292,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -314,7 +319,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -335,7 +340,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -363,7 +369,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -395,7 +402,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -428,7 +436,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -464,7 +473,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -499,7 +509,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -532,7 +542,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -567,7 +578,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -599,7 +610,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -631,7 +642,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -663,7 +674,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid, null);
}
/**
@@ -676,7 +687,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceCanAccessScanResults(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid,
+ null);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -698,7 +710,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid);
// verify that checking FINE for legacy apps!
verify(mMockAppOps).noteOp(eq(AppOpsManager.OPSTR_FINE_LOCATION), anyInt(), anyString(),
@@ -721,7 +733,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid);
verify(mMockAppOps)
.noteOp(eq(AppOpsManager.OPSTR_FINE_LOCATION), anyInt(), anyString(), any(), any());
}
@@ -745,7 +757,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid);
fail("Expected SecurityException not thrown");
} catch (SecurityException e) {
// empty
@@ -937,7 +949,7 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, mUid);
+ codeUnderTest.enforceLocationPermission(TEST_PACKAGE_NAME, TEST_FEATURE_ID, mUid);
}
/**
@@ -960,13 +972,13 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
verify(mMockAppOps, never())
.unsafeCheckOp(AppOpsManager.OPSTR_FINE_LOCATION, mUid, TEST_PACKAGE_NAME);
- verify(mMockAppOps)
- .noteOp(AppOpsManager.OPSTR_FINE_LOCATION, mUid, TEST_PACKAGE_NAME, null, null);
+ verify(mMockAppOps).noteOp(AppOpsManager.OPSTR_FINE_LOCATION, mUid, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, null);
}
/**
@@ -990,8 +1002,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- IGNORE_LOCATION_SETTINGS, HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ mUid, IGNORE_LOCATION_SETTINGS, HIDE_FROM_APP_OPS);
verify(mMockAppOps).unsafeCheckOp(AppOpsManager.OPSTR_FINE_LOCATION, mUid,
TEST_PACKAGE_NAME);
@@ -1022,8 +1034,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -1050,8 +1062,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -1079,8 +1091,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -1107,8 +1119,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -1135,8 +1147,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -1163,8 +1175,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
setupTestCase();
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- IGNORE_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, TEST_FEATURE_ID,
+ mUid, IGNORE_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
}
/**
@@ -1188,8 +1200,8 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
WifiPermissionsUtil codeUnderTest = new WifiPermissionsUtil(mMockPermissionsWrapper,
mMockContext, mMockUserManager, mWifiInjector);
try {
- codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME, mUid,
- CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
+ codeUnderTest.enforceCanAccessScanResultsForWifiScanner(TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, mUid, CHECK_LOCATION_SETTINGS, DONT_HIDE_FROM_APP_OPS);
fail("Expected SecurityException is not thrown");
} catch (SecurityException e) {
}
@@ -1217,12 +1229,14 @@ public class WifiPermissionsUtilTest extends WifiBaseTest {
when(mMockPkgMgr.getApplicationInfoAsUser(eq(TEST_PACKAGE_NAME), eq(0), any()))
.thenReturn(mMockApplInfo);
when(mMockContext.getPackageManager()).thenReturn(mMockPkgMgr);
- when(mMockAppOps.noteOp(AppOpsManager.OPSTR_WIFI_SCAN, mUid, TEST_PACKAGE_NAME, null, null))
- .thenReturn(mWifiScanAllowApps);
- when(mMockAppOps.noteOp(AppOpsManager.OPSTR_COARSE_LOCATION, mUid, TEST_PACKAGE_NAME, null,
- null)).thenReturn(mAllowCoarseLocationApps);
- when(mMockAppOps.noteOp(AppOpsManager.OPSTR_FINE_LOCATION, mUid, TEST_PACKAGE_NAME, null,
- null)).thenReturn(mAllowFineLocationApps);
+ when(mMockAppOps.noteOp(AppOpsManager.OPSTR_WIFI_SCAN, mUid, TEST_PACKAGE_NAME,
+ TEST_FEATURE_ID, null)).thenReturn(mWifiScanAllowApps);
+ when(mMockAppOps.noteOp(eq(AppOpsManager.OPSTR_COARSE_LOCATION), eq(mUid),
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), nullable(String.class)))
+ .thenReturn(mAllowCoarseLocationApps);
+ when(mMockAppOps.noteOp(eq(AppOpsManager.OPSTR_FINE_LOCATION), eq(mUid),
+ eq(TEST_PACKAGE_NAME), eq(TEST_FEATURE_ID), nullable(String.class)))
+ .thenReturn(mAllowFineLocationApps);
when(mMockAppOps.unsafeCheckOp(AppOpsManager.OPSTR_FINE_LOCATION, mUid, TEST_PACKAGE_NAME))
.thenReturn(mAllowFineLocationApps);
if (mThrowSecurityException) {