p2p: clear persistent groups in setup and teardown
In group relevant tests, we need to ensure there is
no existing persistent group to interference tests.
Bug: 193594437
Test: atest CtsWifiTestCases
Change-Id: I44aa771ff675c1ad8c868f63ec46e7ab6a6ee94e
diff --git a/tests/tests/wifi/src/android/net/wifi/cts/ConcurrencyTest.java b/tests/tests/wifi/src/android/net/wifi/cts/ConcurrencyTest.java
index 6b22913..188c2a9 100644
--- a/tests/tests/wifi/src/android/net/wifi/cts/ConcurrencyTest.java
+++ b/tests/tests/wifi/src/android/net/wifi/cts/ConcurrencyTest.java
@@ -201,6 +201,9 @@
super.tearDown();
return;
}
+ if (null != mWifiP2pManager) {
+ removeAllPersistentGroups();
+ }
mContext.unregisterReceiver(mReceiver);
ShellIdentityUtils.invokeWithShellPermissions(
@@ -304,6 +307,24 @@
cm.unregisterNetworkCallback(networkCallback);
}
+ private void removeAllPersistentGroups() {
+ WifiP2pGroupList persistentGroups = getPersistentGroups();
+ assertNotNull(persistentGroups);
+ for (WifiP2pGroup group: persistentGroups.getGroupList()) {
+ resetResponse(mMyResponse);
+ ShellIdentityUtils.invokeWithShellPermissions(() -> {
+ mWifiP2pManager.deletePersistentGroup(mWifiP2pChannel,
+ group.getNetworkId(),
+ mActionListener);
+ assertTrue(waitForServiceResponse(mMyResponse));
+ assertTrue(mMyResponse.success);
+ });
+ }
+ persistentGroups = getPersistentGroups();
+ assertNotNull(persistentGroups);
+ assertEquals(0, persistentGroups.getGroupList().size());
+ }
+
private boolean setupWifiP2p() {
// Cannot support p2p alone
if (!WifiFeature.isWifiSupported(getContext())) {
@@ -348,6 +369,7 @@
assertEquals(WifiManager.WIFI_STATE_ENABLED, mMySync.expectedWifiState);
assertEquals(WifiP2pManager.WIFI_P2P_STATE_ENABLED, mMySync.expectedP2pState);
+ removeAllPersistentGroups();
return true;
}