Loading res/xml/about_legal.xml +2 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,8 @@ --> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/legal_information"> android:title="@string/legal_information" android:key="legal_screen"> <!-- Note: The titles given here probably won't be used. Instead, we programmatically fill the title with the label of the activity with the corresponding action. Loading src/com/android/settings/DeviceInfoSettings.java +9 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,8 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable { private static final String LOG_TAG = "DeviceInfoSettings"; private static final String KEY_LEGAL_CONTAINER = "legal_container"; @Override public int getMetricsCategory() { return MetricsEvent.DEVICEINFO; Loading Loading @@ -151,5 +153,12 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable { return buildPreferenceControllers(context, null /*activity */, null /* fragment */, null /* lifecycle */); } @Override public List<String> getNonIndexableKeys(Context context) { List<String> keys = super.getNonIndexableKeys(context); keys.add(KEY_LEGAL_CONTAINER); return keys; } }; } tests/robotests/src/com/android/settings/DeviceInfoSettingsTest.java +18 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ import android.os.UserManager; import android.support.v7.preference.PreferenceScreen; import com.android.settings.dashboard.SummaryLoader; import com.android.settings.testutils.XmlTestUtils; import com.android.settings.testutils.shadow.ShadowUtils; import com.android.settingslib.DeviceInfoUtils; import org.junit.Before; Loading @@ -36,8 +38,11 @@ import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import java.util.List; @RunWith(SettingsRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) public class DeviceInfoSettingsTest { Loading Loading @@ -75,4 +80,17 @@ public class DeviceInfoSettingsTest { verify(mSummaryLoader).setSummary(mProvider, Build.MODEL + DeviceInfoUtils.getMsvSuffix()); } @Test @Config(shadows = ShadowUtils.class) public void testNonIndexableKeys_existInXmlLayout() { final Context context = RuntimeEnvironment.application; final List<String> niks = DeviceInfoSettings.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(context); final int xmlId = (new DeviceInfoSettings()).getPreferenceScreenResId(); final List<String> keys = XmlTestUtils.getKeysFromPreferenceXml(context, xmlId); assertThat(keys).containsAllIn(niks); } } tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java +5 −0 Original line number Diff line number Diff line Loading @@ -46,4 +46,9 @@ public class ShadowUtils { public static void reset() { sFingerprintManager = null; } @Implementation public static boolean isWifiOnly(Context context) { return true; } } Loading
res/xml/about_legal.xml +2 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,8 @@ --> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/legal_information"> android:title="@string/legal_information" android:key="legal_screen"> <!-- Note: The titles given here probably won't be used. Instead, we programmatically fill the title with the label of the activity with the corresponding action. Loading
src/com/android/settings/DeviceInfoSettings.java +9 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,8 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable { private static final String LOG_TAG = "DeviceInfoSettings"; private static final String KEY_LEGAL_CONTAINER = "legal_container"; @Override public int getMetricsCategory() { return MetricsEvent.DEVICEINFO; Loading Loading @@ -151,5 +153,12 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable { return buildPreferenceControllers(context, null /*activity */, null /* fragment */, null /* lifecycle */); } @Override public List<String> getNonIndexableKeys(Context context) { List<String> keys = super.getNonIndexableKeys(context); keys.add(KEY_LEGAL_CONTAINER); return keys; } }; }
tests/robotests/src/com/android/settings/DeviceInfoSettingsTest.java +18 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ import android.os.UserManager; import android.support.v7.preference.PreferenceScreen; import com.android.settings.dashboard.SummaryLoader; import com.android.settings.testutils.XmlTestUtils; import com.android.settings.testutils.shadow.ShadowUtils; import com.android.settingslib.DeviceInfoUtils; import org.junit.Before; Loading @@ -36,8 +38,11 @@ import org.junit.runner.RunWith; import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import java.util.List; @RunWith(SettingsRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) public class DeviceInfoSettingsTest { Loading Loading @@ -75,4 +80,17 @@ public class DeviceInfoSettingsTest { verify(mSummaryLoader).setSummary(mProvider, Build.MODEL + DeviceInfoUtils.getMsvSuffix()); } @Test @Config(shadows = ShadowUtils.class) public void testNonIndexableKeys_existInXmlLayout() { final Context context = RuntimeEnvironment.application; final List<String> niks = DeviceInfoSettings.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(context); final int xmlId = (new DeviceInfoSettings()).getPreferenceScreenResId(); final List<String> keys = XmlTestUtils.getKeysFromPreferenceXml(context, xmlId); assertThat(keys).containsAllIn(niks); } }
tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java +5 −0 Original line number Diff line number Diff line Loading @@ -46,4 +46,9 @@ public class ShadowUtils { public static void reset() { sFingerprintManager = null; } @Implementation public static boolean isWifiOnly(Context context) { return true; } }