ANR observed under settings when trying to reset network settings
- Move reset network settings code to async task. Test: manual, Robolectric Fixes: 130772994 Change-Id: I59345f48ed840ecfd64c29c2c20ab8caf2679f63 Merged-In: I59345f48ed840ecfd64c29c2c20ab8caf2679f63
This commit is contained in:
@@ -18,12 +18,12 @@ package com.android.settings;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.spy;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
|
||||
import com.android.settings.testutils.shadow.ShadowBluetoothAdapter;
|
||||
import com.android.settings.testutils.shadow.ShadowRecoverySystem;
|
||||
import com.android.settings.testutils.shadow.ShadowWifiP2pManager;
|
||||
|
||||
@@ -38,18 +38,21 @@ import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@Config(shadows = {ShadowRecoverySystem.class, ShadowWifiP2pManager.class})
|
||||
@Config(shadows = {ShadowRecoverySystem.class,
|
||||
ShadowWifiP2pManager.class, ShadowBluetoothAdapter.class
|
||||
})
|
||||
public class ResetNetworkConfirmTest {
|
||||
|
||||
private Activity mActivity;
|
||||
private FragmentActivity mActivity;
|
||||
@Mock
|
||||
private ResetNetworkConfirm mResetNetworkConfirm;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mResetNetworkConfirm = spy(new ResetNetworkConfirm());
|
||||
mActivity = Robolectric.setupActivity(Activity.class);
|
||||
mResetNetworkConfirm = new ResetNetworkConfirm();
|
||||
mActivity = Robolectric.setupActivity(FragmentActivity.class);
|
||||
mResetNetworkConfirm.mActivity = mActivity;
|
||||
}
|
||||
|
||||
@After
|
||||
@@ -62,10 +65,9 @@ public class ResetNetworkConfirmTest {
|
||||
public void testResetNetworkData_resetEsim() {
|
||||
mResetNetworkConfirm.mEraseEsim = true;
|
||||
|
||||
mResetNetworkConfirm.esimFactoryReset(mActivity, "" /* packageName */);
|
||||
mResetNetworkConfirm.mFinalClickListener.onClick(null /* View */);
|
||||
Robolectric.getBackgroundThreadScheduler().advanceToLastPostedRunnable();
|
||||
|
||||
assertThat(mResetNetworkConfirm.mEraseEsimTask).isNotNull();
|
||||
assertThat(ShadowRecoverySystem.getWipeEuiccCalledCount()).isEqualTo(1);
|
||||
}
|
||||
|
||||
@@ -73,9 +75,9 @@ public class ResetNetworkConfirmTest {
|
||||
public void testResetNetworkData_notResetEsim() {
|
||||
mResetNetworkConfirm.mEraseEsim = false;
|
||||
|
||||
mResetNetworkConfirm.esimFactoryReset(mActivity, "" /* packageName */);
|
||||
mResetNetworkConfirm.mFinalClickListener.onClick(null /* View */);
|
||||
Robolectric.getBackgroundThreadScheduler().advanceToLastPostedRunnable();
|
||||
|
||||
assertThat(mResetNetworkConfirm.mEraseEsimTask).isNull();
|
||||
assertThat(ShadowRecoverySystem.getWipeEuiccCalledCount()).isEqualTo(0);
|
||||
}
|
||||
|
||||
@@ -93,25 +95,25 @@ public class ResetNetworkConfirmTest {
|
||||
public void setSubtitle_eraseEsim() {
|
||||
mResetNetworkConfirm.mEraseEsim = true;
|
||||
mResetNetworkConfirm.mContentView =
|
||||
LayoutInflater.from(mActivity).inflate(R.layout.reset_network_confirm, null);
|
||||
LayoutInflater.from(mActivity).inflate(R.layout.reset_network_confirm, null);
|
||||
|
||||
mResetNetworkConfirm.setSubtitle();
|
||||
|
||||
assertThat(((TextView) mResetNetworkConfirm.mContentView
|
||||
.findViewById(R.id.reset_network_confirm)).getText())
|
||||
.isEqualTo(mActivity.getString(R.string.reset_network_final_desc_esim));
|
||||
.findViewById(R.id.reset_network_confirm)).getText())
|
||||
.isEqualTo(mActivity.getString(R.string.reset_network_final_desc_esim));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setSubtitle_notEraseEsim() {
|
||||
mResetNetworkConfirm.mEraseEsim = false;
|
||||
mResetNetworkConfirm.mContentView =
|
||||
LayoutInflater.from(mActivity).inflate(R.layout.reset_network_confirm, null);
|
||||
LayoutInflater.from(mActivity).inflate(R.layout.reset_network_confirm, null);
|
||||
|
||||
mResetNetworkConfirm.setSubtitle();
|
||||
|
||||
assertThat(((TextView) mResetNetworkConfirm.mContentView
|
||||
.findViewById(R.id.reset_network_confirm)).getText())
|
||||
.isEqualTo(mActivity.getString(R.string.reset_network_final_desc));
|
||||
.findViewById(R.id.reset_network_confirm)).getText())
|
||||
.isEqualTo(mActivity.getString(R.string.reset_network_final_desc));
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user