Merge "Prevent leaking Wi-Fi dialog on lock screen" into tm-qpr-dev am: bd41fe5a5b
am: 3d6b632232
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19207636 Change-Id: I66292ce19a0616253ec8f23a185d34aa7a03a977 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -33,6 +33,7 @@ import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.app.KeyguardManager;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.net.wifi.WifiConfiguration;
|
||||
@@ -46,7 +47,6 @@ import com.android.wifitrackerlib.WifiEntry;
|
||||
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.Mock;
|
||||
@@ -82,6 +82,8 @@ public class WifiDialogActivityTest {
|
||||
Intent mResultData;
|
||||
@Mock
|
||||
WifiConfigController mController;
|
||||
@Mock
|
||||
KeyguardManager mKeyguardManager;
|
||||
|
||||
WifiDialogActivity mActivity;
|
||||
|
||||
@@ -99,6 +101,7 @@ public class WifiDialogActivityTest {
|
||||
mActivity = spy(Robolectric.setupActivity(WifiDialogActivity.class));
|
||||
when(mActivity.getSystemService(UserManager.class)).thenReturn(mUserManager);
|
||||
when(mActivity.getSystemService(WifiManager.class)).thenReturn(mWifiManager);
|
||||
when(mActivity.getSystemService(KeyguardManager.class)).thenReturn(mKeyguardManager);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -294,4 +297,35 @@ public class WifiDialogActivityTest {
|
||||
|
||||
assertThat(result).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dismissDialog_hasDialog_dialogDismiss() {
|
||||
mActivity.mDialog = mWifiDialog;
|
||||
mActivity.mDialog2 = mWifiDialog2;
|
||||
|
||||
mActivity.dismissDialog();
|
||||
|
||||
verify(mWifiDialog).dismiss();
|
||||
verify(mWifiDialog2).dismiss();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onKeyguardLockedStateChanged_keyguardIsNotLocked_doNotDismissDialog() {
|
||||
WifiDialogActivity.LockScreenMonitor lockScreenMonitor =
|
||||
new WifiDialogActivity.LockScreenMonitor(mActivity);
|
||||
|
||||
lockScreenMonitor.onKeyguardLockedStateChanged(false /* isKeyguardLocked */);
|
||||
|
||||
verify(mActivity, never()).dismissDialog();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onKeyguardLockedStateChanged_keyguardIsLocked_dismissDialog() {
|
||||
WifiDialogActivity.LockScreenMonitor lockScreenMonitor =
|
||||
new WifiDialogActivity.LockScreenMonitor(mActivity);
|
||||
|
||||
lockScreenMonitor.onKeyguardLockedStateChanged(true /* isKeyguardLocked */);
|
||||
|
||||
verify(mActivity).dismissDialog();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user