[Provider Model] Hide W+ network if it's inactive

Bug: 187854575
Test: manual test
atest -c CarrierWifiTogglePreferenceControllerTest \
         SubscriptionsPreferenceControllerTest

Change-Id: Ib99bc7fef38a99c1da1e365c2002ad30c617d445
This commit is contained in:
Weng Su
2021-06-11 17:05:21 +08:00
parent 9f7564c1b6
commit c4eb3b1320
6 changed files with 59 additions and 29 deletions

View File

@@ -72,8 +72,10 @@ public class CarrierWifiTogglePreferenceControllerTest {
mController.init(mock(Lifecycle.class), SUB_ID);
mController.mIsProviderModelEnabled = true;
mController.mIsCarrierProvisionWifiEnabled = true;
doReturn(true).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
doReturn(SSID).when(mWifiPickerTrackerHelper).getCarrierNetworkSsid();
mController.mWifiPickerTrackerHelper = mWifiPickerTrackerHelper;
if (Looper.myLooper() == null) {
Looper.prepare();
}
@@ -87,6 +89,7 @@ public class CarrierWifiTogglePreferenceControllerTest {
mNetworkPreference.setKey(
CarrierWifiTogglePreferenceController.CARRIER_WIFI_NETWORK_PREF_KEY);
mScreen.addPreference(mNetworkPreference);
mController.mCarrierNetworkPreference = mNetworkPreference;
}
@Test
@@ -139,8 +142,9 @@ public class CarrierWifiTogglePreferenceControllerTest {
}
@Test
public void displayPreference_carrierNetworkEnabled_showCarrierNetwork() {
doReturn(true).when(mWifiPickerTrackerHelper).isCarrierNetworkEnabled(SUB_ID);
public void displayPreference_carrierNetworkActive_showCarrierNetwork() {
doReturn(true).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
doReturn(SSID).when(mWifiPickerTrackerHelper).getCarrierNetworkSsid();
mController.displayPreference(mScreen);
@@ -150,8 +154,8 @@ public class CarrierWifiTogglePreferenceControllerTest {
}
@Test
public void displayPreference_carrierNetworkDisabled_hideCarrierNetwork() {
doReturn(false).when(mWifiPickerTrackerHelper).isCarrierNetworkEnabled(SUB_ID);
public void displayPreference_carrierNetworkInactive_hideCarrierNetwork() {
doReturn(false).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
mController.displayPreference(mScreen);
@@ -160,24 +164,48 @@ public class CarrierWifiTogglePreferenceControllerTest {
}
@Test
public void onWifiStateChanged_carrierNetworkVisible_shouldSetSummary() {
mController.mCarrierNetworkPreference = mNetworkPreference;
mNetworkPreference.setVisible(true);
public void onWifiStateChanged_carrierNetworkActive_shouldSetSummary() {
doReturn(true).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
doReturn(SSID).when(mWifiPickerTrackerHelper).getCarrierNetworkSsid();
mNetworkPreference.setVisible(false);
mNetworkPreference.setSummary(null);
mController.onWifiEntriesChanged();
assertThat(mNetworkPreference.isVisible()).isEqualTo(true);
assertThat(mNetworkPreference.getSummary()).isEqualTo(SSID);
}
@Test
public void onWifiEntriesChanged_carrierNetworkVisible_shouldSetSummary() {
mController.mCarrierNetworkPreference = mNetworkPreference;
public void onWifiStateChanged_carrierNetworkInactive_shouldHideNetwork() {
doReturn(false).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
mNetworkPreference.setVisible(true);
mController.onWifiEntriesChanged();
assertThat(mNetworkPreference.isVisible()).isEqualTo(false);
}
@Test
public void onWifiEntriesChanged_carrierNetworkActive_shouldSetSummary() {
doReturn(true).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
doReturn(SSID).when(mWifiPickerTrackerHelper).getCarrierNetworkSsid();
mNetworkPreference.setVisible(false);
mNetworkPreference.setSummary(null);
mController.onWifiEntriesChanged();
assertThat(mNetworkPreference.isVisible()).isEqualTo(true);
assertThat(mNetworkPreference.getSummary()).isEqualTo(SSID);
}
@Test
public void onWifiEntriesChanged_carrierNetworkInactive_shouldHideNetwork() {
doReturn(false).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
mNetworkPreference.setVisible(true);
mController.onWifiEntriesChanged();
assertThat(mNetworkPreference.isVisible()).isEqualTo(false);
}
}

View File

@@ -455,7 +455,7 @@ public class SubscriptionsPreferenceControllerTest {
doReturn(mock(MobileMappings.Config.class)).when(sInjector).getConfig(mContext);
doReturn(networkType)
.when(sInjector).getNetworkType(any(), any(), any(), anyInt(), eq(true));
doReturn(true).when(mWifiPickerTrackerHelper).isActiveCarrierNetwork();
doReturn(true).when(mWifiPickerTrackerHelper).isCarrierNetworkActive();
mController.setWifiPickerTrackerHelper(mWifiPickerTrackerHelper);
mController.onResume();