Add new warning dialogue when user is Resetting mobile network settings.

If the user is reseting mobile network settings and have all these
conditions:
- No Wi-fi
- Has check to delete all eSIMs
- Has a least one RAC sim carrier
Then show the warning dialogue.

Test: make, manually test, atest SubSettingLauncherTest, atest ResetNetworkTest,  atest SubscriptionUtilTest
Bug: 328649510
Change-Id: I47d9b868b649b259d5e4008ec742317d2cb7cf51
This commit is contained in:
Rafael Higuera Silva
2024-03-13 23:18:47 +00:00
parent 14b1831fda
commit 147cc19b53
8 changed files with 195 additions and 17 deletions

View File

@@ -27,6 +27,9 @@ import android.content.Intent;
import android.view.View;
import android.widget.CheckBox;
import com.android.settings.network.SubscriptionUtil;
import com.android.settings.network.telephony.EuiccRacConnectivityDialogActivity;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
@@ -51,6 +54,7 @@ public class ResetNetworkTest {
@Test
@Ignore
public void showFinalConfirmation_checkboxVisible_eraseEsimChecked() {
SubscriptionUtil.setEnableRacDialogForTesting(true);
mResetNetwork.mEsimContainer.setVisibility(View.VISIBLE);
mResetNetwork.mEsimCheckbox.setChecked(true);
@@ -61,6 +65,21 @@ public class ResetNetworkTest {
.isNotNull();
}
@Test
public void showFinalConfirmation_checkboxVisible_eraseEsimChecked_showRacWarningDialog() {
SubscriptionUtil.setEnableRacDialogForTesting(true);
mResetNetwork.mEsimContainer.setVisibility(View.VISIBLE);
mResetNetwork.mEsimCheckbox.setChecked(true);
mResetNetwork.showFinalConfirmation();
Intent intent = shadowOf(mActivity).getNextStartedActivity();
assertThat(intent).isNotNull();
assertThat(intent.getComponent().getClassName()).isEqualTo(
EuiccRacConnectivityDialogActivity.class.getName());
}
@Test
public void showFinalConfirmation_checkboxVisible_eraseEsimUnchecked() {
mResetNetwork.mEsimContainer.setVisibility(View.VISIBLE);