summaryrefslogtreecommitdiff
path: root/wifi/tests
diff options
context:
space:
mode:
authorNate Jiang <qiangjiang@google.com>2020-12-09 22:43:33 -0800
committerNate Jiang <qiangjiang@google.com>2020-12-10 17:43:07 -0800
commit1bbcd4ef884e14007de07df558425196e1abd9a7 (patch)
treec02aa7378fd4dc96a4e4e3f8601f77d536b509eb /wifi/tests
parenta36573fb1f5f5fad10c0466c1f26785ad04ea95e (diff)
[Suggestion] Add listener for user approval status change
Bug: 160648511 Test: atest android.net.wifi Change-Id: I2a1959a2504e274de83f9cd0e44300222bbe8aac
Diffstat (limited to 'wifi/tests')
-rw-r--r--wifi/tests/src/android/net/wifi/WifiManagerTest.java96
1 files changed, 90 insertions, 6 deletions
diff --git a/wifi/tests/src/android/net/wifi/WifiManagerTest.java b/wifi/tests/src/android/net/wifi/WifiManagerTest.java
index 52e91394d8bf..e48fc6d6e26f 100644
--- a/wifi/tests/src/android/net/wifi/WifiManagerTest.java
+++ b/wifi/tests/src/android/net/wifi/WifiManagerTest.java
@@ -89,6 +89,7 @@ import android.net.wifi.WifiManager.OnWifiUsabilityStatsListener;
import android.net.wifi.WifiManager.ScanResultsCallback;
import android.net.wifi.WifiManager.SoftApCallback;
import android.net.wifi.WifiManager.SuggestionConnectionStatusListener;
+import android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener;
import android.net.wifi.WifiManager.TrafficStateCallback;
import android.net.wifi.WifiManager.WifiConnectedNetworkScorer;
import android.os.Build;
@@ -147,12 +148,13 @@ public class WifiManagerTest {
@Mock NetworkRequestMatchCallback mNetworkRequestMatchCallback;
@Mock OnWifiUsabilityStatsListener mOnWifiUsabilityStatsListener;
@Mock OnWifiActivityEnergyInfoListener mOnWifiActivityEnergyInfoListener;
- @Mock SuggestionConnectionStatusListener mListener;
+ @Mock SuggestionConnectionStatusListener mSuggestionConnectionListener;
@Mock Runnable mRunnable;
@Mock Executor mExecutor;
@Mock Executor mAnotherExecutor;
@Mock ActivityManager mActivityManager;
@Mock WifiConnectedNetworkScorer mWifiConnectedNetworkScorer;
+ @Mock SuggestionUserApprovalStatusListener mSuggestionUserApprovalStatusListener;
private Handler mHandler;
private TestLooper mLooper;
@@ -2327,7 +2329,7 @@ public class WifiManagerTest {
*/
@Test(expected = IllegalArgumentException.class)
public void testAddSuggestionConnectionStatusListenerWithNullExecutor() {
- mWifiManager.addSuggestionConnectionStatusListener(null, mListener);
+ mWifiManager.addSuggestionConnectionStatusListener(null, mSuggestionConnectionListener);
}
/**
@@ -2347,11 +2349,12 @@ public class WifiManagerTest {
ArgumentCaptor<ISuggestionConnectionStatusListener.Stub> callbackCaptor =
ArgumentCaptor.forClass(ISuggestionConnectionStatusListener.Stub.class);
Executor executor = new SynchronousExecutor();
- mWifiManager.addSuggestionConnectionStatusListener(executor, mListener);
+ mWifiManager.addSuggestionConnectionStatusListener(executor, mSuggestionConnectionListener);
verify(mWifiService).registerSuggestionConnectionStatusListener(any(IBinder.class),
callbackCaptor.capture(), anyInt(), anyString(), nullable(String.class));
callbackCaptor.getValue().onConnectionStatus(mWifiNetworkSuggestion, errorCode);
- verify(mListener).onConnectionStatus(any(WifiNetworkSuggestion.class), eq(errorCode));
+ verify(mSuggestionConnectionListener).onConnectionStatus(any(WifiNetworkSuggestion.class),
+ eq(errorCode));
}
/**
@@ -2362,7 +2365,8 @@ public class WifiManagerTest {
int errorCode = STATUS_SUGGESTION_CONNECTION_FAILURE_AUTHENTICATION;
ArgumentCaptor<ISuggestionConnectionStatusListener.Stub> callbackCaptor =
ArgumentCaptor.forClass(ISuggestionConnectionStatusListener.Stub.class);
- mWifiManager.addSuggestionConnectionStatusListener(mExecutor, mListener);
+ mWifiManager.addSuggestionConnectionStatusListener(mExecutor,
+ mSuggestionConnectionListener);
verify(mWifiService).registerSuggestionConnectionStatusListener(any(IBinder.class),
callbackCaptor.capture(), anyInt(), anyString(), nullable(String.class));
callbackCaptor.getValue().onConnectionStatus(any(WifiNetworkSuggestion.class), errorCode);
@@ -2382,7 +2386,7 @@ public class WifiManagerTest {
*/
@Test
public void testRemoveSuggestionConnectionListener() throws Exception {
- mWifiManager.removeSuggestionConnectionStatusListener(mListener);
+ mWifiManager.removeSuggestionConnectionStatusListener(mSuggestionConnectionListener);
verify(mWifiService).unregisterSuggestionConnectionStatusListener(anyInt(), anyString());
}
@@ -2609,4 +2613,84 @@ public class WifiManagerTest {
verify(mWifiService).isCarrierNetworkOffloadEnabled(TEST_SUB_ID, false);
}
+
+ /**
+ * Verify an IllegalArgumentException is thrown if listener is not provided.
+ */
+ @Test(expected = IllegalArgumentException.class)
+ public void testRemoveSuggestionUserApprovalStatusListenerWithNullListener() {
+ assumeTrue(SdkLevel.isAtLeastS());
+
+ mWifiManager.removeSuggestionUserApprovalStatusListener(null);
+ }
+
+
+ /**
+ * Verify removeSuggestionUserApprovalStatusListener.
+ */
+ @Test
+ public void testRemoveSuggestionUserApprovalStatusListener() throws Exception {
+ assumeTrue(SdkLevel.isAtLeastS());
+
+ mWifiManager.removeSuggestionUserApprovalStatusListener(
+ mSuggestionUserApprovalStatusListener);
+ verify(mWifiService).removeSuggestionUserApprovalStatusListener(anyInt(), anyString());
+ }
+
+ /**
+ * Verify an IllegalArgumentException is thrown if executor not provided.
+ */
+ @Test(expected = IllegalArgumentException.class)
+ public void testAddSuggestionUserApprovalStatusListenerWithNullExecutor() {
+ assumeTrue(SdkLevel.isAtLeastS());
+
+ mWifiManager.addSuggestionUserApprovalStatusListener(null,
+ mSuggestionUserApprovalStatusListener);
+ }
+
+ /**
+ * Verify an IllegalArgumentException is thrown if listener is not provided.
+ */
+ @Test(expected = IllegalArgumentException.class)
+ public void testAddSuggestionUserApprovalStatusListenerWithNullListener() {
+ assumeTrue(SdkLevel.isAtLeastS());
+
+ mWifiManager.addSuggestionUserApprovalStatusListener(mExecutor, null);
+ }
+
+ /**
+ * Verify client provided listener is being called to the right listener.
+ */
+ @Test
+ public void testAddSuggestionUserApprovalStatusListenerAndReceiveEvent() throws Exception {
+ assumeTrue(SdkLevel.isAtLeastS());
+
+ ArgumentCaptor<ISuggestionUserApprovalStatusListener.Stub> callbackCaptor =
+ ArgumentCaptor.forClass(ISuggestionUserApprovalStatusListener.Stub.class);
+ Executor executor = new SynchronousExecutor();
+ mWifiManager.addSuggestionUserApprovalStatusListener(executor,
+ mSuggestionUserApprovalStatusListener);
+ verify(mWifiService).addSuggestionUserApprovalStatusListener(any(IBinder.class),
+ callbackCaptor.capture(), anyInt(), anyString(), nullable(String.class));
+ callbackCaptor.getValue().onUserApprovalStatusChange();
+ verify(mSuggestionUserApprovalStatusListener).onUserApprovalStatusChange();
+ }
+
+ /**
+ * Verify client provided listener is being called to the right executor.
+ */
+ @Test
+ public void testAddSuggestionUserApprovalStatusListenerWithTheTargetExecutor()
+ throws Exception {
+ assumeTrue(SdkLevel.isAtLeastS());
+ ArgumentCaptor<ISuggestionUserApprovalStatusListener.Stub> callbackCaptor =
+ ArgumentCaptor.forClass(ISuggestionUserApprovalStatusListener.Stub.class);
+ mWifiManager.addSuggestionUserApprovalStatusListener(mExecutor,
+ mSuggestionUserApprovalStatusListener);
+ verify(mWifiService).addSuggestionUserApprovalStatusListener(any(IBinder.class),
+ callbackCaptor.capture(), anyInt(), anyString(), nullable(String.class));
+ callbackCaptor.getValue().onUserApprovalStatusChange();
+ verify(mExecutor).execute(any(Runnable.class));
+ }
+
}