Loading packages/SettingsLib/src/com/android/settingslib/deviceinfo/AbstractWifiMacAddressPreferenceController.java +6 −10 Original line number Original line Diff line number Diff line Loading @@ -19,9 +19,7 @@ package com.android.settingslib.deviceinfo; import android.annotation.SuppressLint; import android.annotation.SuppressLint; import android.content.Context; import android.content.Context; import android.net.ConnectivityManager; import android.net.ConnectivityManager; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.net.wifi.WifiManager; import android.provider.Settings; import android.text.TextUtils; import android.text.TextUtils; import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting; Loading Loading @@ -83,15 +81,13 @@ public abstract class AbstractWifiMacAddressPreferenceController @SuppressLint("HardwareIds") @SuppressLint("HardwareIds") @Override @Override protected void updateConnectivity() { protected void updateConnectivity() { WifiInfo wifiInfo = mWifiManager.getConnectionInfo(); final String[] macAddresses = mWifiManager.getFactoryMacAddresses(); final int macRandomizationMode = Settings.Global.getInt(mContext.getContentResolver(), String macAddress = null; Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, OFF); if (macAddresses != null && macAddresses.length > 0) { final String macAddress = wifiInfo == null ? null : wifiInfo.getMacAddress(); macAddress = macAddresses[0]; } if (macRandomizationMode == ON && WifiInfo.DEFAULT_MAC_ADDRESS.equals(macAddress)) { if (TextUtils.isEmpty(macAddress)) { mWifiMacAddress.setSummary(R.string.wifi_status_mac_randomized); } else if (TextUtils.isEmpty(macAddress) || WifiInfo.DEFAULT_MAC_ADDRESS.equals(macAddress)) { mWifiMacAddress.setSummary(R.string.status_unavailable); mWifiMacAddress.setSummary(R.string.status_unavailable); } else { } else { mWifiMacAddress.setSummary(macAddress); mWifiMacAddress.setSummary(macAddress); Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/deviceinfo/WifiMacAddressPreferenceControllerTest.java +5 −88 Original line number Original line Diff line number Diff line Loading @@ -27,7 +27,6 @@ import android.content.Context; import android.net.ConnectivityManager; import android.net.ConnectivityManager; import android.net.wifi.WifiInfo; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.net.wifi.WifiManager; import android.provider.Settings; import androidx.preference.Preference; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen; Loading Loading @@ -93,105 +92,23 @@ public class WifiMacAddressPreferenceControllerTest { } } @Test @Test public void updateConnectivity_nullWifiInfoWithMacRandomizationOff_setMacUnavailable() { public void updateConnectivity_null_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), doReturn(null).when(mWifiManager).getFactoryMacAddresses(); Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.OFF); doReturn(null).when(mWifiManager).getConnectionInfo(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_nullMacWithMacRandomizationOff_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.OFF); doReturn(null).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); .isEqualTo(mContext.getString(R.string.status_unavailable)); } } @Test @Test public void updateConnectivity_defaultMacWithMacRandomizationOff_setMacUnavailable() { public void updateConnectivity_validMac_setValidMac() { Settings.Global.putInt(mContext.getContentResolver(), final String[] macAddresses = new String[]{TEST_MAC_ADDRESS}; Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, doReturn(macAddresses).when(mWifiManager).getFactoryMacAddresses(); AbstractWifiMacAddressPreferenceController.OFF); doReturn(WifiInfo.DEFAULT_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_validMacWithMacRandomizationOff_setValidMac() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.OFF); doReturn(TEST_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()).isEqualTo(TEST_MAC_ADDRESS); assertThat(mPreference.getSummary()).isEqualTo(TEST_MAC_ADDRESS); } @Test public void updateConnectivity_nullWifiInfoWithMacRandomizationOn_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(null).when(mWifiManager).getConnectionInfo(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_nullMacWithMacRandomizationOn_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(null).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_defaultMacWithMacRandomizationOn_setMacRandomized() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(WifiInfo.DEFAULT_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.wifi_status_mac_randomized)); } @Test public void updateConnectivity_validMacWithMacRandomizationOn_setValidMac() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(TEST_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()).isEqualTo(TEST_MAC_ADDRESS); } } private static class ConcreteWifiMacAddressPreferenceController private static class ConcreteWifiMacAddressPreferenceController Loading Loading
packages/SettingsLib/src/com/android/settingslib/deviceinfo/AbstractWifiMacAddressPreferenceController.java +6 −10 Original line number Original line Diff line number Diff line Loading @@ -19,9 +19,7 @@ package com.android.settingslib.deviceinfo; import android.annotation.SuppressLint; import android.annotation.SuppressLint; import android.content.Context; import android.content.Context; import android.net.ConnectivityManager; import android.net.ConnectivityManager; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.net.wifi.WifiManager; import android.provider.Settings; import android.text.TextUtils; import android.text.TextUtils; import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting; Loading Loading @@ -83,15 +81,13 @@ public abstract class AbstractWifiMacAddressPreferenceController @SuppressLint("HardwareIds") @SuppressLint("HardwareIds") @Override @Override protected void updateConnectivity() { protected void updateConnectivity() { WifiInfo wifiInfo = mWifiManager.getConnectionInfo(); final String[] macAddresses = mWifiManager.getFactoryMacAddresses(); final int macRandomizationMode = Settings.Global.getInt(mContext.getContentResolver(), String macAddress = null; Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, OFF); if (macAddresses != null && macAddresses.length > 0) { final String macAddress = wifiInfo == null ? null : wifiInfo.getMacAddress(); macAddress = macAddresses[0]; } if (macRandomizationMode == ON && WifiInfo.DEFAULT_MAC_ADDRESS.equals(macAddress)) { if (TextUtils.isEmpty(macAddress)) { mWifiMacAddress.setSummary(R.string.wifi_status_mac_randomized); } else if (TextUtils.isEmpty(macAddress) || WifiInfo.DEFAULT_MAC_ADDRESS.equals(macAddress)) { mWifiMacAddress.setSummary(R.string.status_unavailable); mWifiMacAddress.setSummary(R.string.status_unavailable); } else { } else { mWifiMacAddress.setSummary(macAddress); mWifiMacAddress.setSummary(macAddress); Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/deviceinfo/WifiMacAddressPreferenceControllerTest.java +5 −88 Original line number Original line Diff line number Diff line Loading @@ -27,7 +27,6 @@ import android.content.Context; import android.net.ConnectivityManager; import android.net.ConnectivityManager; import android.net.wifi.WifiInfo; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.net.wifi.WifiManager; import android.provider.Settings; import androidx.preference.Preference; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen; Loading Loading @@ -93,105 +92,23 @@ public class WifiMacAddressPreferenceControllerTest { } } @Test @Test public void updateConnectivity_nullWifiInfoWithMacRandomizationOff_setMacUnavailable() { public void updateConnectivity_null_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), doReturn(null).when(mWifiManager).getFactoryMacAddresses(); Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.OFF); doReturn(null).when(mWifiManager).getConnectionInfo(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_nullMacWithMacRandomizationOff_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.OFF); doReturn(null).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); .isEqualTo(mContext.getString(R.string.status_unavailable)); } } @Test @Test public void updateConnectivity_defaultMacWithMacRandomizationOff_setMacUnavailable() { public void updateConnectivity_validMac_setValidMac() { Settings.Global.putInt(mContext.getContentResolver(), final String[] macAddresses = new String[]{TEST_MAC_ADDRESS}; Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, doReturn(macAddresses).when(mWifiManager).getFactoryMacAddresses(); AbstractWifiMacAddressPreferenceController.OFF); doReturn(WifiInfo.DEFAULT_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_validMacWithMacRandomizationOff_setValidMac() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.OFF); doReturn(TEST_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()).isEqualTo(TEST_MAC_ADDRESS); assertThat(mPreference.getSummary()).isEqualTo(TEST_MAC_ADDRESS); } @Test public void updateConnectivity_nullWifiInfoWithMacRandomizationOn_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(null).when(mWifiManager).getConnectionInfo(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_nullMacWithMacRandomizationOn_setMacUnavailable() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(null).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.status_unavailable)); } @Test public void updateConnectivity_defaultMacWithMacRandomizationOn_setMacRandomized() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(WifiInfo.DEFAULT_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getString(R.string.wifi_status_mac_randomized)); } @Test public void updateConnectivity_validMacWithMacRandomizationOn_setValidMac() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.WIFI_CONNECTED_MAC_RANDOMIZATION_ENABLED, AbstractWifiMacAddressPreferenceController.ON); doReturn(TEST_MAC_ADDRESS).when(mWifiInfo).getMacAddress(); mController.displayPreference(mScreen); assertThat(mPreference.getSummary()).isEqualTo(TEST_MAC_ADDRESS); } } private static class ConcreteWifiMacAddressPreferenceController private static class ConcreteWifiMacAddressPreferenceController Loading