summaryrefslogtreecommitdiff
path: root/robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java')
-rw-r--r--robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java49
1 files changed, 25 insertions, 24 deletions
diff --git a/robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java b/robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java
index a74e5fc..3840771 100644
--- a/robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java
+++ b/robotests/src/com/android/networkrecommendation/wakeup/WifiWakeupHelperTest.java
@@ -15,6 +15,8 @@
*/
package com.android.networkrecommendation.wakeup;
+import static com.android.networkrecommendation.TestData.SSID_1;
+import static com.android.networkrecommendation.TestData.UNQUOTED_SSID_1;
import static com.google.common.truth.Truth.assertThat;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@@ -30,14 +32,18 @@ import android.app.Notification;
import android.app.NotificationManager;
import android.content.Context;
import android.content.Intent;
-import android.content.SharedPreferences;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Handler;
import android.os.Looper;
+import android.provider.Settings;
+import android.util.ArraySet;
import com.android.networkrecommendation.config.Flag;
-import com.google.common.collect.ImmutableSet;
+import com.android.networkrecommendation.config.PreferenceFile;
+import com.android.networkrecommendation.config.Preferences;
+import com.android.networkrecommendation.scoring.util.HashUtil;
+import com.android.networkrecommendation.shadows.ShadowNotificationChannelUtil;
import java.util.Set;
import org.junit.Before;
import org.junit.Test;
@@ -52,17 +58,15 @@ import org.robolectric.shadows.ShadowLooper;
/** Unit tests for {@link WifiWakeupHelper} */
@RunWith(RobolectricTestRunner.class)
-@Config(manifest = "packages/services/NetworkRecommendation/AndroidManifest.xml", sdk = 23)
+@Config(manifest = "packages/services/NetworkRecommendation/AndroidManifest.xml", sdk = 23,
+shadows={ShadowNotificationChannelUtil.class})
public class WifiWakeupHelperTest {
- private static final String SSID = "ssid";
-
private Context mContext;
private WifiConfiguration mWifiConfiguration;
@Mock private NotificationManager mNotificationManager;
@Mock private WifiManager mWifiManager;
@Mock private WifiInfo mWifiInfo;
- private SharedPreferences mSharedPreferences;
private WifiWakeupHelper mWifiWakeupHelper;
@@ -70,11 +74,12 @@ public class WifiWakeupHelperTest {
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
Flag.initForTest();
- mWifiConfiguration = new WifiConfiguration();
- mWifiConfiguration.SSID = "\"" + SSID + "\"";
-
mContext = RuntimeEnvironment.application;
- mSharedPreferences = mContext.getSharedPreferences("wifi_wakeup", Context.MODE_PRIVATE);
+ PreferenceFile.init(mContext);
+ Preferences.ssidsForWakeupShown.remove();
+
+ mWifiConfiguration = new WifiConfiguration();
+ mWifiConfiguration.SSID = SSID_1;
when(mWifiManager.getConnectionInfo()).thenReturn(mWifiInfo);
@@ -84,8 +89,7 @@ public class WifiWakeupHelperTest {
mContext.getResources(),
new Handler(Looper.getMainLooper()),
mNotificationManager,
- mWifiManager,
- mSharedPreferences);
+ mWifiManager);
}
@Test
@@ -97,10 +101,9 @@ public class WifiWakeupHelperTest {
verify(mNotificationManager, times(1))
.notify(anyString(), anyInt(), any(Notification.class));
- Set<String> ssidSet =
- mSharedPreferences.getStringSet(WifiWakeupHelper.KEY_SHOWN_SSIDS, null);
+ Set<String> ssidSet = Preferences.ssidsForWakeupShown.get();
assertEquals(1, ssidSet.size());
- assertTrue(ssidSet.contains(mWifiConfiguration.SSID));
+ assertTrue(ssidSet.contains(HashUtil.getSsidHash(UNQUOTED_SSID_1)));
}
@Test
@@ -115,7 +118,7 @@ public class WifiWakeupHelperTest {
public void notificationCanceledWhenWifiDisabled() {
mWifiWakeupHelper.startWifiSession(mWifiConfiguration);
- when(mWifiInfo.getSSID()).thenReturn(SSID);
+ when(mWifiInfo.getSSID()).thenReturn(UNQUOTED_SSID_1);
when(mWifiManager.isWifiEnabled()).thenReturn(true, false);
mContext.sendBroadcast(new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION));
@@ -130,7 +133,7 @@ public class WifiWakeupHelperTest {
public void notificationCanceledWhenSsidChanged() throws Exception {
mWifiWakeupHelper.startWifiSession(mWifiConfiguration);
- when(mWifiInfo.getSSID()).thenReturn(SSID, "blah");
+ when(mWifiInfo.getSSID()).thenReturn(UNQUOTED_SSID_1, "blah");
when(mWifiManager.isWifiEnabled()).thenReturn(true);
mContext.sendBroadcast(new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION));
@@ -144,12 +147,10 @@ public class WifiWakeupHelperTest {
@Test
public void sessionLoggedWithoutNotification() {
- mSharedPreferences
- .edit()
- .putStringSet(
- WifiWakeupHelper.KEY_SHOWN_SSIDS, ImmutableSet.of(mWifiConfiguration.SSID))
- .commit();
- when(mWifiInfo.getSSID()).thenReturn(SSID, "blah");
+ Set<String> ssidsShown = new ArraySet<>();
+ ssidsShown.add(HashUtil.getSsidHash(mWifiConfiguration.SSID));
+ Preferences.ssidsForWakeupShown.put(ssidsShown);
+ when(mWifiInfo.getSSID()).thenReturn(UNQUOTED_SSID_1, "blah");
when(mWifiManager.isWifiEnabled()).thenReturn(true);
mWifiWakeupHelper.startWifiSession(mWifiConfiguration);
@@ -169,7 +170,7 @@ public class WifiWakeupHelperTest {
Intent intent = Shadows.shadowOf(RuntimeEnvironment.application).getNextStartedActivity();
- assertThat(intent.getAction()).isEqualTo("android.settings.CONFIGURE_WIFI_SETTINGS");
+ assertThat(intent.getAction()).isEqualTo(Settings.ACTION_WIFI_SETTINGS);
}
@Test