Merge "Enable time zone preference on wifi-only device."

This commit is contained in:
TreeHugger Robot
2017-01-13 20:45:49 +00:00
committed by Android (Google) Code Review
2 changed files with 20 additions and 1 deletions

View File

@@ -67,7 +67,7 @@ public class AutoTimeZonePreferenceController extends PreferenceController
} }
public boolean isEnabled() { public boolean isEnabled() {
return Settings.Global.getInt(mContext.getContentResolver(), return isAvailable() && Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.AUTO_TIME_ZONE, 0) > 0; Settings.Global.AUTO_TIME_ZONE, 0) > 0;
} }
} }

View File

@@ -55,6 +55,7 @@ public class AutoTimeZonePreferenceControllerTest {
@Before @Before
public void setUp() { public void setUp() {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
ShadowApplication.getInstance().setSystemService(Context.CONNECTIVITY_SERVICE, mCm);
mContext = ShadowApplication.getInstance().getApplicationContext(); mContext = ShadowApplication.getInstance().getApplicationContext();
mPreference = new Preference(mContext); mPreference = new Preference(mContext);
when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE)).thenReturn(mCm); when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE)).thenReturn(mCm);
@@ -87,6 +88,24 @@ public class AutoTimeZonePreferenceControllerTest {
assertThat(mController.isAvailable()).isFalse(); assertThat(mController.isAvailable()).isFalse();
} }
@Test
public void isFromSUW_notEnable() {
mController = new AutoTimeZonePreferenceController(
mMockContext, null /* callback */, true /* isFromSUW */);
assertThat(mController.isEnabled()).isFalse();
}
@Test
public void isWifiOnly_notEnable() {
when(mCm.isNetworkSupported(ConnectivityManager.TYPE_MOBILE)).thenReturn(false);
mController = new AutoTimeZonePreferenceController(
mMockContext, null /* callback */, false /* isFromSUW */);
assertThat(mController.isEnabled()).isFalse();
}
@Test @Test
public void testIsEnabled_shouldReadFromSettingsProvider() { public void testIsEnabled_shouldReadFromSettingsProvider() {
mController = new AutoTimeZonePreferenceController( mController = new AutoTimeZonePreferenceController(