Merge "Read CarrierConfig to get operator name" into tm-dev am: b1bdc42d52
am: 0e3e447e11
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/17800680 Change-Id: If68a15a92b3e830b3a1fded9278898af74b6e00a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -14,12 +14,14 @@
|
|||||||
package com.android.settings.display;
|
package com.android.settings.display;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.os.PersistableBundle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.telephony.CarrierConfigManager;
|
||||||
|
import android.telephony.SubscriptionManager;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
|
|
||||||
import com.android.settings.R;
|
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
import com.android.settingslib.core.AbstractPreferenceController;
|
||||||
|
|
||||||
@@ -34,7 +36,15 @@ public class ShowOperatorNamePreferenceController extends AbstractPreferenceCont
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public boolean isAvailable() {
|
||||||
return mContext.getResources().getBoolean(R.bool.config_showOperatorNameInStatusBar);
|
final CarrierConfigManager configMgr = mContext
|
||||||
|
.getSystemService(CarrierConfigManager.class);
|
||||||
|
if (configMgr == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
final PersistableBundle b = configMgr.getConfigForSubId(SubscriptionManager
|
||||||
|
.getDefaultDataSubscriptionId());
|
||||||
|
return b != null && b.getBoolean(CarrierConfigManager
|
||||||
|
.KEY_SHOW_OPERATOR_NAME_IN_STATUSBAR_BOOL, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -18,53 +18,62 @@ package com.android.settings.display;
|
|||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
|
import static org.mockito.Mockito.anyInt;
|
||||||
|
import static org.mockito.Mockito.spy;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.os.PersistableBundle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.telephony.CarrierConfigManager;
|
||||||
|
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
|
|
||||||
import com.android.settings.R;
|
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Answers;
|
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.MockitoAnnotations;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
|
import org.robolectric.RuntimeEnvironment;
|
||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
public class ShowOperatorNamePreferenceControllerTest {
|
public class ShowOperatorNamePreferenceControllerTest {
|
||||||
|
|
||||||
private static final String KEY_SHOW_OPERATOR_NAME = "show_operator_name";
|
private static final String KEY_SHOW_OPERATOR_NAME = "show_operator_name";
|
||||||
|
|
||||||
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
|
||||||
private Context mContext;
|
|
||||||
@Mock
|
@Mock
|
||||||
private SwitchPreference mPreference;
|
private SwitchPreference mPreference;
|
||||||
|
@Mock
|
||||||
|
private CarrierConfigManager mConfigManager;
|
||||||
|
|
||||||
private ShowOperatorNamePreferenceController mController;
|
private ShowOperatorNamePreferenceController mController;
|
||||||
|
@Mock
|
||||||
|
private PersistableBundle mConfig;
|
||||||
|
private Context mContext;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
MockitoAnnotations.initMocks(this);
|
MockitoAnnotations.initMocks(this);
|
||||||
|
mContext = spy(RuntimeEnvironment.application);
|
||||||
|
|
||||||
|
when(mConfigManager.getConfigForSubId(anyInt())).thenReturn(mConfig);
|
||||||
|
when(mContext.getSystemService(CarrierConfigManager.class)).thenReturn(mConfigManager);
|
||||||
|
|
||||||
mController = new ShowOperatorNamePreferenceController(mContext);
|
mController = new ShowOperatorNamePreferenceController(mContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testIsAvailable_configIsTrue_ReturnTrue() {
|
public void testIsAvailable_configIsTrue_ReturnTrue() {
|
||||||
when(mContext.getResources()
|
when(mConfig.getBoolean(CarrierConfigManager
|
||||||
.getBoolean(R.bool.config_showOperatorNameInStatusBar)).thenReturn(true);
|
.KEY_SHOW_OPERATOR_NAME_IN_STATUSBAR_BOOL, false)).thenReturn(true);
|
||||||
assertThat(mController.isAvailable()).isTrue();
|
assertThat(mController.isAvailable()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testIsAvailable_configIsFalse_ReturnFalse() {
|
public void testIsAvailable_configIsFalse_ReturnFalse() {
|
||||||
when(mContext.getResources()
|
when(mConfig.getBoolean(CarrierConfigManager
|
||||||
.getBoolean(R.bool.config_showOperatorNameInStatusBar)).thenReturn(false);
|
.KEY_SHOW_OPERATOR_NAME_IN_STATUSBAR_BOOL, false)).thenReturn(false);
|
||||||
assertThat(mController.isAvailable()).isFalse();
|
assertThat(mController.isAvailable()).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user