Migrate all AlertDialogs to AndroidX version

- Let test cases can be compatible with AndroidX AlertDialog.
- Theme of Transparent needs to support AndroidX AlertDialog.

Change-Id: I0789b66f52feef30ebab7fb824d0e39d5ae9cc96
Fixes: 111413092
Test: make RunSettingsRoboTests -j56
This commit is contained in:
tmfang
2018-07-17 13:53:04 +08:00
parent 41ab6b4bf8
commit 5bd7151413
22 changed files with 163 additions and 126 deletions

View File

@@ -17,7 +17,6 @@
package com.android.settings.wifi;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
import android.content.Intent;
@@ -25,8 +24,10 @@ import android.net.wifi.WifiConfiguration;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settings.testutils.shadow.ShadowConnectivityManager;
import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
import com.android.settings.testutils.shadow.SettingsShadowTypedArray;
import com.android.settings.testutils.shadow.ShadowAlertDialogCompat;
import com.android.settings.testutils.shadow.ShadowConnectivityManager;
import com.android.settings.testutils.shadow.ShadowWifiManager;
import org.junit.Before;
@@ -36,7 +37,6 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.Robolectric;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowAlertDialog;
import org.robolectric.util.ReflectionHelpers;
@RunWith(SettingsRobolectricTestRunner.class)
@@ -44,9 +44,10 @@ import org.robolectric.util.ReflectionHelpers;
SettingsShadowResources.SettingsShadowTheme.class,
ShadowConnectivityManager.class,
SettingsShadowTypedArray.class,
ShadowWifiManager.class
}
)
ShadowWifiManager.class,
ShadowAlertDialogCompat.class,
SettingsShadowResourcesImpl.class
})
public class WifiDialogActivityTest {
private static final String AP1_SSID = "\"ap1\"";
@@ -65,7 +66,7 @@ public class WifiDialogActivityTest {
@Test
public void onSubmit_shouldConnectToNetwork() {
WifiDialogActivity activity = Robolectric.setupActivity(WifiDialogActivity.class);
WifiDialog dialog = (WifiDialog) ShadowAlertDialog.getLatestAlertDialog();
WifiDialog dialog = (WifiDialog) ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
ReflectionHelpers.setField(dialog, "mController", mController);
@@ -82,7 +83,8 @@ public class WifiDialogActivityTest {
WifiDialogActivity.class,
new Intent().putExtra(WifiDialogActivity.KEY_CONNECT_FOR_CALLER, false))
.setup().get();
WifiDialog dialog = (WifiDialog) ShadowAlertDialog.getLatestAlertDialog();
WifiDialog dialog = (WifiDialog) ShadowAlertDialogCompat.getLatestAlertDialog();
assertThat(dialog).isNotNull();
ReflectionHelpers.setField(dialog, "mController", mController);

View File

@@ -27,7 +27,6 @@ import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import android.app.AlertDialog;
import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
@@ -45,6 +44,7 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
@RunWith(SettingsRobolectricTestRunner.class)

View File

@@ -20,11 +20,10 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
import android.app.Activity;
import android.content.Context;
import android.net.wifi.WifiManager;
import android.view.inputmethod.InputMethodManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
import com.android.settings.testutils.shadow.ShadowNfcAdapter;
import org.junit.After;
@@ -33,16 +32,14 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.Robolectric;
import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(shadows = ShadowNfcAdapter.class)
@Config(shadows = {ShadowNfcAdapter.class, SettingsShadowResourcesImpl.class})
public class WriteWifiConfigToNfcDialogTest {
@Mock
private Activity mActivity;
@Mock
private WifiManager mWifiManager;
@@ -51,13 +48,10 @@ public class WriteWifiConfigToNfcDialogTest {
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
when(mActivity.getApplicationContext()).thenReturn(mActivity);
when(mActivity.getSystemService(Context.INPUT_METHOD_SERVICE))
.thenReturn(ReflectionHelpers.newInstance(InputMethodManager.class));
mWriteWifiConfigToNfcDialog = new WriteWifiConfigToNfcDialog(RuntimeEnvironment.application,
0 /* security */);
final Activity activity = Robolectric.setupActivity(Activity.class);
mWriteWifiConfigToNfcDialog = new WriteWifiConfigToNfcDialog(activity, 0 /* security */);
ReflectionHelpers.setField(mWriteWifiConfigToNfcDialog, "mWifiManager", mWifiManager);
mWriteWifiConfigToNfcDialog.setOwnerActivity(mActivity);
mWriteWifiConfigToNfcDialog.setOwnerActivity(activity);
mWriteWifiConfigToNfcDialog.onCreate(null /* savedInstanceState */);
}