Loading packages/SettingsLib/src/com/android/settingslib/core/AbstractPreferenceController.java +84 −74 Original line number Diff line number Diff line Loading @@ -65,6 +65,16 @@ public abstract class AbstractPreferenceController { findAndRemovePreference(screen, key); } /** * Show/hide a preference. */ protected final void setVisible(PreferenceGroup group, String key, boolean isVisible) { final Preference pref = group.findPreference(key); if (pref != null) { pref.setVisible(isVisible); } } // finds the preference recursively and removes it from its parent private boolean findAndRemovePreference(PreferenceGroup prefGroup, String key) { final int preferenceCount = prefGroup.getPreferenceCount(); Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/drawable/UserIconDrawableTest.java→packages/SettingsLib/tests/integ/src/com/android/settingslib/drawable/UserIconDrawableTest.java +6 −9 Original line number Diff line number Diff line Loading @@ -16,22 +16,19 @@ package com.android.settingslib.drawable; import static com.google.common.truth.Truth.assertThat; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.support.test.InstrumentationRegistry; import android.support.test.runner.AndroidJUnit4; import com.android.settingslib.R; import com.android.settingslib.SettingsLibRobolectricTestRunner; import com.android.settingslib.TestConfig; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import static com.google.common.truth.Truth.assertThat; @RunWith(SettingsLibRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) @RunWith(AndroidJUnit4.class) public class UserIconDrawableTest { private UserIconDrawable mDrawable; Loading @@ -39,7 +36,7 @@ public class UserIconDrawableTest { @Test public void getConstantState_shouldNotBeNull() { final Bitmap b = BitmapFactory.decodeResource( RuntimeEnvironment.application.getResources(), InstrumentationRegistry.getTargetContext().getResources(), R.drawable.home); mDrawable = new UserIconDrawable(100 /* size */).setIcon(b).bake(); Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/PreferenceControllerTest.java→packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/AbstractPreferenceControllerTest.java +32 −14 Original line number Diff line number Diff line Loading @@ -15,45 +15,49 @@ */ package com.android.settingslib.core; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Matchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceGroup; import android.support.v7.preference.PreferenceManager; import android.support.v7.preference.PreferenceScreen; import com.android.settingslib.TestConfig; import com.android.settingslib.core.AbstractPreferenceController; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadows.ShadowApplication; import org.robolectric.RobolectricTestRunner; import static org.mockito.Matchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @RunWith(RobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) public class PreferenceControllerTest { public class AbstractPreferenceControllerTest { @Mock private Context mContext; @Mock private PreferenceScreen mScreen; @Mock private Preference mPreference; private Preference mPreference; private TestPrefController mTestPrefController; @Before public void setUp() { MockitoAnnotations.initMocks(this); mPreference = new Preference(RuntimeEnvironment.application); mPreference.setKey(TestPrefController.KEY_PREF); mTestPrefController = new TestPrefController(mContext); } Loading @@ -61,7 +65,6 @@ public class PreferenceControllerTest { public void removeExistingPref_shouldBeRemoved() { when(mScreen.getPreferenceCount()).thenReturn(1); when(mScreen.getPreference(0)).thenReturn(mPreference); when(mPreference.getKey()).thenReturn(TestPrefController.KEY_PREF); mTestPrefController.removePreference(mScreen, TestPrefController.KEY_PREF); Loading @@ -84,11 +87,26 @@ public class PreferenceControllerTest { verify(mScreen, never()).removePreference(any(Preference.class)); } @Test public void setVisible_prefIsVisible_shouldSetToVisible() { when(mScreen.findPreference(TestPrefController.KEY_PREF)).thenReturn(mPreference); mTestPrefController.setVisible(mScreen, TestPrefController.KEY_PREF, true /* visible */); assertThat(mPreference.isVisible()).isTrue(); } @Test public void setVisible_prefNotVisible_shouldSetToInvisible() { when(mScreen.findPreference(TestPrefController.KEY_PREF)).thenReturn(mPreference); mTestPrefController.setVisible(mScreen, TestPrefController.KEY_PREF, false /* visible */); assertThat(mPreference.isVisible()).isFalse(); } @Test public void doNotDisplayPref_ifNotAvailable() { when(mScreen.getPreferenceCount()).thenReturn(1); when(mScreen.getPreference(0)).thenReturn(mPreference); when(mPreference.getKey()).thenReturn(TestPrefController.KEY_PREF); mTestPrefController.isAvailable = false; mTestPrefController.displayPreference(mScreen); Loading Loading
packages/SettingsLib/src/com/android/settingslib/core/AbstractPreferenceController.java +84 −74 Original line number Diff line number Diff line Loading @@ -65,6 +65,16 @@ public abstract class AbstractPreferenceController { findAndRemovePreference(screen, key); } /** * Show/hide a preference. */ protected final void setVisible(PreferenceGroup group, String key, boolean isVisible) { final Preference pref = group.findPreference(key); if (pref != null) { pref.setVisible(isVisible); } } // finds the preference recursively and removes it from its parent private boolean findAndRemovePreference(PreferenceGroup prefGroup, String key) { final int preferenceCount = prefGroup.getPreferenceCount(); Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/drawable/UserIconDrawableTest.java→packages/SettingsLib/tests/integ/src/com/android/settingslib/drawable/UserIconDrawableTest.java +6 −9 Original line number Diff line number Diff line Loading @@ -16,22 +16,19 @@ package com.android.settingslib.drawable; import static com.google.common.truth.Truth.assertThat; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.support.test.InstrumentationRegistry; import android.support.test.runner.AndroidJUnit4; import com.android.settingslib.R; import com.android.settingslib.SettingsLibRobolectricTestRunner; import com.android.settingslib.TestConfig; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import static com.google.common.truth.Truth.assertThat; @RunWith(SettingsLibRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) @RunWith(AndroidJUnit4.class) public class UserIconDrawableTest { private UserIconDrawable mDrawable; Loading @@ -39,7 +36,7 @@ public class UserIconDrawableTest { @Test public void getConstantState_shouldNotBeNull() { final Bitmap b = BitmapFactory.decodeResource( RuntimeEnvironment.application.getResources(), InstrumentationRegistry.getTargetContext().getResources(), R.drawable.home); mDrawable = new UserIconDrawable(100 /* size */).setIcon(b).bake(); Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/PreferenceControllerTest.java→packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/AbstractPreferenceControllerTest.java +32 −14 Original line number Diff line number Diff line Loading @@ -15,45 +15,49 @@ */ package com.android.settingslib.core; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Matchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceGroup; import android.support.v7.preference.PreferenceManager; import android.support.v7.preference.PreferenceScreen; import com.android.settingslib.TestConfig; import com.android.settingslib.core.AbstractPreferenceController; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadows.ShadowApplication; import org.robolectric.RobolectricTestRunner; import static org.mockito.Matchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @RunWith(RobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) public class PreferenceControllerTest { public class AbstractPreferenceControllerTest { @Mock private Context mContext; @Mock private PreferenceScreen mScreen; @Mock private Preference mPreference; private Preference mPreference; private TestPrefController mTestPrefController; @Before public void setUp() { MockitoAnnotations.initMocks(this); mPreference = new Preference(RuntimeEnvironment.application); mPreference.setKey(TestPrefController.KEY_PREF); mTestPrefController = new TestPrefController(mContext); } Loading @@ -61,7 +65,6 @@ public class PreferenceControllerTest { public void removeExistingPref_shouldBeRemoved() { when(mScreen.getPreferenceCount()).thenReturn(1); when(mScreen.getPreference(0)).thenReturn(mPreference); when(mPreference.getKey()).thenReturn(TestPrefController.KEY_PREF); mTestPrefController.removePreference(mScreen, TestPrefController.KEY_PREF); Loading @@ -84,11 +87,26 @@ public class PreferenceControllerTest { verify(mScreen, never()).removePreference(any(Preference.class)); } @Test public void setVisible_prefIsVisible_shouldSetToVisible() { when(mScreen.findPreference(TestPrefController.KEY_PREF)).thenReturn(mPreference); mTestPrefController.setVisible(mScreen, TestPrefController.KEY_PREF, true /* visible */); assertThat(mPreference.isVisible()).isTrue(); } @Test public void setVisible_prefNotVisible_shouldSetToInvisible() { when(mScreen.findPreference(TestPrefController.KEY_PREF)).thenReturn(mPreference); mTestPrefController.setVisible(mScreen, TestPrefController.KEY_PREF, false /* visible */); assertThat(mPreference.isVisible()).isFalse(); } @Test public void doNotDisplayPref_ifNotAvailable() { when(mScreen.getPreferenceCount()).thenReturn(1); when(mScreen.getPreference(0)).thenReturn(mPreference); when(mPreference.getKey()).thenReturn(TestPrefController.KEY_PREF); mTestPrefController.isAvailable = false; mTestPrefController.displayPreference(mScreen); Loading