Loading src/com/android/settings/datausage/DataUsageSummary.java +9 −7 Original line number Diff line number Diff line Loading @@ -71,10 +71,11 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs public static final boolean TEST_RADIOS = false; public static final String TEST_RADIOS_PROP = "test.radios"; public static final String KEY_RESTRICT_BACKGROUND = "restrict_background"; public static final String KEY_NETWORK_RESTRICTIONS = "network_restrictions"; private static final String KEY_STATUS_HEADER = "status_header"; private static final String KEY_LIMIT_SUMMARY = "limit_summary"; private static final String KEY_RESTRICT_BACKGROUND = "restrict_background"; private static final String KEY_NETWORK_RESTRICTIONS = "network_restrictions"; private static final String KEY_WIFI_USAGE_TITLE = "wifi_category"; private DataUsageController mDataUsageController; Loading Loading @@ -465,7 +466,7 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs @Override public List<SearchIndexableResource> getXmlResourcesToIndex(Context context, boolean enabled) { ArrayList<SearchIndexableResource> resources = new ArrayList<>(); List<SearchIndexableResource> resources = new ArrayList<>(); SearchIndexableResource resource = new SearchIndexableResource(context); resource.xmlResId = R.xml.data_usage; resources.add(resource); Loading @@ -485,13 +486,14 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs @Override public List<String> getNonIndexableKeys(Context context) { ArrayList<String> keys = new ArrayList<>(); boolean hasMobileData = ConnectivityManager.from(context).isNetworkSupported( ConnectivityManager.TYPE_MOBILE); List<String> keys = super.getNonIndexableKeys(context); if (hasMobileData) { if (hasMobileData(context)) { keys.add(KEY_RESTRICT_BACKGROUND); } if (hasWifiRadio(context)) { keys.add(KEY_NETWORK_RESTRICTIONS); } keys.add(KEY_WIFI_USAGE_TITLE); return keys; Loading tests/robotests/src/com/android/settings/datausage/DataUsageSummaryTest.java +13 −1 Original line number Diff line number Diff line Loading @@ -25,8 +25,8 @@ import android.net.wifi.WifiManager; import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment; import com.android.settings.testutils.XmlTestUtils; import com.android.settings.testutils.shadow.ShadowConnectivityManager; import com.android.settingslib.NetworkPolicyEditor; import org.junit.Before; Loading Loading @@ -160,4 +160,16 @@ public class DataUsageSummaryTest { assertThat(keys).containsAllIn(niks); } @Test @Config(shadows = ShadowConnectivityManager.class) public void testNonIndexableKeys_hasMobileData_restrictedAccessesAdded() { ShadowConnectivityManager.setIsNetworkSupported(true); List<String> keys = DataUsageSummary.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(mContext); assertThat(keys).contains(DataUsageSummary.KEY_RESTRICT_BACKGROUND); assertThat(keys).contains(DataUsageSummary.KEY_NETWORK_RESTRICTIONS); ShadowConnectivityManager.setIsNetworkSupported(false); } } tests/robotests/src/com/android/settings/testutils/shadow/ShadowConnectivityManager.java +6 −1 Original line number Diff line number Diff line Loading @@ -24,9 +24,14 @@ import org.robolectric.annotation.Implements; @Implements(ConnectivityManager.class) public class ShadowConnectivityManager extends org.robolectric.shadows.ShadowConnectivityManager { private static boolean mIsNetworkSupported; @Implementation public boolean isNetworkSupported(int networkType) { return false; return mIsNetworkSupported; } public static void setIsNetworkSupported(boolean isNetworkSupported) { mIsNetworkSupported = isNetworkSupported; } } Loading
src/com/android/settings/datausage/DataUsageSummary.java +9 −7 Original line number Diff line number Diff line Loading @@ -71,10 +71,11 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs public static final boolean TEST_RADIOS = false; public static final String TEST_RADIOS_PROP = "test.radios"; public static final String KEY_RESTRICT_BACKGROUND = "restrict_background"; public static final String KEY_NETWORK_RESTRICTIONS = "network_restrictions"; private static final String KEY_STATUS_HEADER = "status_header"; private static final String KEY_LIMIT_SUMMARY = "limit_summary"; private static final String KEY_RESTRICT_BACKGROUND = "restrict_background"; private static final String KEY_NETWORK_RESTRICTIONS = "network_restrictions"; private static final String KEY_WIFI_USAGE_TITLE = "wifi_category"; private DataUsageController mDataUsageController; Loading Loading @@ -465,7 +466,7 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs @Override public List<SearchIndexableResource> getXmlResourcesToIndex(Context context, boolean enabled) { ArrayList<SearchIndexableResource> resources = new ArrayList<>(); List<SearchIndexableResource> resources = new ArrayList<>(); SearchIndexableResource resource = new SearchIndexableResource(context); resource.xmlResId = R.xml.data_usage; resources.add(resource); Loading @@ -485,13 +486,14 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs @Override public List<String> getNonIndexableKeys(Context context) { ArrayList<String> keys = new ArrayList<>(); boolean hasMobileData = ConnectivityManager.from(context).isNetworkSupported( ConnectivityManager.TYPE_MOBILE); List<String> keys = super.getNonIndexableKeys(context); if (hasMobileData) { if (hasMobileData(context)) { keys.add(KEY_RESTRICT_BACKGROUND); } if (hasWifiRadio(context)) { keys.add(KEY_NETWORK_RESTRICTIONS); } keys.add(KEY_WIFI_USAGE_TITLE); return keys; Loading
tests/robotests/src/com/android/settings/datausage/DataUsageSummaryTest.java +13 −1 Original line number Diff line number Diff line Loading @@ -25,8 +25,8 @@ import android.net.wifi.WifiManager; import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment; import com.android.settings.testutils.XmlTestUtils; import com.android.settings.testutils.shadow.ShadowConnectivityManager; import com.android.settingslib.NetworkPolicyEditor; import org.junit.Before; Loading Loading @@ -160,4 +160,16 @@ public class DataUsageSummaryTest { assertThat(keys).containsAllIn(niks); } @Test @Config(shadows = ShadowConnectivityManager.class) public void testNonIndexableKeys_hasMobileData_restrictedAccessesAdded() { ShadowConnectivityManager.setIsNetworkSupported(true); List<String> keys = DataUsageSummary.SEARCH_INDEX_DATA_PROVIDER .getNonIndexableKeys(mContext); assertThat(keys).contains(DataUsageSummary.KEY_RESTRICT_BACKGROUND); assertThat(keys).contains(DataUsageSummary.KEY_NETWORK_RESTRICTIONS); ShadowConnectivityManager.setIsNetworkSupported(false); } }
tests/robotests/src/com/android/settings/testutils/shadow/ShadowConnectivityManager.java +6 −1 Original line number Diff line number Diff line Loading @@ -24,9 +24,14 @@ import org.robolectric.annotation.Implements; @Implements(ConnectivityManager.class) public class ShadowConnectivityManager extends org.robolectric.shadows.ShadowConnectivityManager { private static boolean mIsNetworkSupported; @Implementation public boolean isNetworkSupported(int networkType) { return false; return mIsNetworkSupported; } public static void setIsNetworkSupported(boolean isNetworkSupported) { mIsNetworkSupported = isNetworkSupported; } }