summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Zhibin Liu <zhibinliu@google.com> 2025-03-24 00:57:43 -0700
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2025-03-24 00:57:43 -0700
commit32bc5aab5971be5cf69610722a83781d99149017 (patch)
treeae3653c844977f20861bd48d1dc3b2075eb23c56
parent4dc8d3260303f1b3f0199e18e639284084e35aa1 (diff)
parent7c598253ff60f06f8e6fe046f18fd88e9daa72d3 (diff)
Merge "Add support to configure state of operator name in status bar [2/2]" into main am: 7c598253ff
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/3516771 Change-Id: Icbafc5ffafb3181412e181800505c3d8be6ae5f4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/com/android/settings/display/ShowOperatorNamePreferenceController.java7
-rw-r--r--tests/robotests/src/com/android/settings/display/ShowOperatorNamePreferenceControllerTest.java26
2 files changed, 32 insertions, 1 deletions
diff --git a/src/com/android/settings/display/ShowOperatorNamePreferenceController.java b/src/com/android/settings/display/ShowOperatorNamePreferenceController.java
index 558763a5ca6..4bc3ab7bc2f 100644
--- a/src/com/android/settings/display/ShowOperatorNamePreferenceController.java
+++ b/src/com/android/settings/display/ShowOperatorNamePreferenceController.java
@@ -63,7 +63,12 @@ public class ShowOperatorNamePreferenceController extends AbstractPreferenceCont
@Override
public void updateState(Preference preference) {
int value = Settings.Secure.getInt(mContext.getContentResolver(),
- KEY_SHOW_OPERATOR_NAME, 1);
+ KEY_SHOW_OPERATOR_NAME, getShowOperatorNameDefault());
((TwoStatePreference) preference).setChecked(value != 0);
}
+
+ private int getShowOperatorNameDefault() {
+ return mContext.getResources()
+ .getInteger(com.android.internal.R.integer.config_showOperatorNameDefault);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/display/ShowOperatorNamePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/ShowOperatorNamePreferenceControllerTest.java
index c6f8a1fa340..be1eab0f37b 100644
--- a/tests/robotests/src/com/android/settings/display/ShowOperatorNamePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/ShowOperatorNamePreferenceControllerTest.java
@@ -22,15 +22,18 @@ import static org.mockito.Mockito.anyInt;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
+import android.content.res.Resources;
import android.os.PersistableBundle;
import android.provider.Settings;
import android.telephony.CarrierConfigManager;
import androidx.preference.SwitchPreference;
+import androidx.preference.TwoStatePreference;
import org.junit.Before;
import org.junit.Test;
@@ -54,11 +57,14 @@ public class ShowOperatorNamePreferenceControllerTest {
@Mock
private PersistableBundle mConfig;
private Context mContext;
+ private Resources mResources;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
+ mResources = spy(mContext.getResources());
+ when(mContext.getResources()).thenReturn(mResources);
when(mConfigManager.getConfigForSubId(anyInt())).thenReturn(mConfig);
when(mContext.getSystemService(CarrierConfigManager.class)).thenReturn(mConfigManager);
@@ -99,4 +105,24 @@ public class ShowOperatorNamePreferenceControllerTest {
Settings.Secure.getInt(mContext.getContentResolver(), KEY_SHOW_OPERATOR_NAME, 1);
assertThat(mode).isEqualTo(0);
}
+
+ @Test
+ public void testUpdateState_DefaultValueEnabled() {
+ when(mResources.getInteger(com.android.internal.R.integer.config_showOperatorNameDefault))
+ .thenReturn(1);
+
+ TwoStatePreference testPreference = mock(TwoStatePreference.class);
+ mController.updateState(testPreference);
+ verify(testPreference).setChecked(true);
+ }
+
+ @Test
+ public void testUpdateState_DefaultValueDisabled() {
+ when(mResources.getInteger(com.android.internal.R.integer.config_showOperatorNameDefault))
+ .thenReturn(0);
+
+ TwoStatePreference testPreference = mock(TwoStatePreference.class);
+ mController.updateState(testPreference);
+ verify(testPreference).setChecked(false);
+ }
}