Gray out the network mode UI before the carrier config is ready
Bug: 202167671 Test: atest EnabledNetworkModePreferenceControllerTest Change-Id: Ib502ac19ea2c19dae95025302dd82aa2b1c7ff88
This commit is contained in:
@@ -87,7 +87,8 @@ public class EnabledNetworkModePreferenceController extends
|
|||||||
final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId);
|
final PersistableBundle carrierConfig = mCarrierConfigCache.getConfigForSubId(subId);
|
||||||
if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
|
if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
|
||||||
visible = false;
|
visible = false;
|
||||||
} else if (carrierConfig == null) {
|
} else if (carrierConfig == null
|
||||||
|
|| !CarrierConfigManager.isConfigForIdentifiedCarrier(carrierConfig)) {
|
||||||
visible = false;
|
visible = false;
|
||||||
} else if (carrierConfig.getBoolean(
|
} else if (carrierConfig.getBoolean(
|
||||||
CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL)
|
CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL)
|
||||||
|
@@ -106,6 +106,7 @@ public class EnabledNetworkModePreferenceControllerTest {
|
|||||||
mPersistableBundle = new PersistableBundle();
|
mPersistableBundle = new PersistableBundle();
|
||||||
doReturn(mPersistableBundle).when(mCarrierConfigCache).getConfig();
|
doReturn(mPersistableBundle).when(mCarrierConfigCache).getConfig();
|
||||||
doReturn(mPersistableBundle).when(mCarrierConfigCache).getConfigForSubId(SUB_ID);
|
doReturn(mPersistableBundle).when(mCarrierConfigCache).getConfigForSubId(SUB_ID);
|
||||||
|
mPersistableBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_CONFIG_APPLIED_BOOL, true);
|
||||||
mPreference = new ListPreference(mContext);
|
mPreference = new ListPreference(mContext);
|
||||||
mController = new EnabledNetworkModePreferenceController(mContext, KEY);
|
mController = new EnabledNetworkModePreferenceController(mContext, KEY);
|
||||||
mockAllowedNetworkTypes(ALLOWED_ALL_NETWORK_TYPE);
|
mockAllowedNetworkTypes(ALLOWED_ALL_NETWORK_TYPE);
|
||||||
@@ -145,6 +146,14 @@ public class EnabledNetworkModePreferenceControllerTest {
|
|||||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@UiThreadTest
|
||||||
|
@Test
|
||||||
|
public void getAvailabilityStatus_carrierConfigNotReady_returnUnavailable() {
|
||||||
|
mPersistableBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_CONFIG_APPLIED_BOOL, false);
|
||||||
|
|
||||||
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
|
||||||
|
}
|
||||||
|
|
||||||
@UiThreadTest
|
@UiThreadTest
|
||||||
@Test
|
@Test
|
||||||
public void getAvailabilityStatus_notWorldPhone_returnAvailable() {
|
public void getAvailabilityStatus_notWorldPhone_returnAvailable() {
|
||||||
|
Reference in New Issue
Block a user