diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2018-08-08 22:25:41 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-08-08 22:25:41 +0000 |
commit | 80ab05f53c0e174a18350fc39d5e28e6cdcd564d (patch) | |
tree | c032cdb18691fb2ceda4f1fcded31303eff7f78b /tests | |
parent | 9f3a4b778063c49eda3847e6692e9444b0ff865b (diff) | |
parent | 72182eb1654c78c0492e55c2479f49ab78a5530b (diff) |
Merge "WifiBackupRestore: Backup network's metered status"
Diffstat (limited to 'tests')
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/WifiBackupRestoreTest.java | 139 | ||||
-rw-r--r-- | tests/wifitests/src/com/android/server/wifi/WifiConfigurationTestUtil.java | 3 |
2 files changed, 141 insertions, 1 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiBackupRestoreTest.java b/tests/wifitests/src/com/android/server/wifi/WifiBackupRestoreTest.java index d6cce6250..53d014b2e 100644 --- a/tests/wifitests/src/com/android/server/wifi/WifiBackupRestoreTest.java +++ b/tests/wifitests/src/com/android/server/wifi/WifiBackupRestoreTest.java @@ -121,6 +121,67 @@ public class WifiBackupRestoreTest { + "</NetworkList>" + "</WifiBackupData>"; + private static final String WIFI_BACKUP_DATA_V1_0 = + "<?xml version='1.0' encoding='utf-8' standalone='yes' ?>" + + "<WifiBackupData>" + + "<float name=\"Version\" value=\"1.0\" />" + + "<NetworkList>" + + "<Network>" + + "<WifiConfiguration>" + + "<string name=\"ConfigKey\">"GoogleGuest-Legacy"NONE</string>" + + "<string name=\"SSID\">"GoogleGuest-Legacy"</string>" + + "<null name=\"BSSID\" />" + + "<null name=\"PreSharedKey\" />" + + "<null name=\"WEPKeys\" />" + + "<int name=\"WEPTxKeyIndex\" value=\"0\" />" + + "<boolean name=\"HiddenSSID\" value=\"false\" />" + + "<boolean name=\"RequirePMF\" value=\"false\" />" + + "<byte-array name=\"AllowedKeyMgmt\" num=\"1\">01</byte-array>" + + "<byte-array name=\"AllowedProtocols\" num=\"1\">03</byte-array>" + + "<byte-array name=\"AllowedAuthAlgos\" num=\"1\">01</byte-array>" + + "<byte-array name=\"AllowedGroupCiphers\" num=\"1\">0f</byte-array>" + + "<byte-array name=\"AllowedPairwiseCiphers\" num=\"1\">06</byte-array>" + + "<boolean name=\"Shared\" value=\"true\" />" + + "</WifiConfiguration>" + + "<IpConfiguration>" + + "<string name=\"IpAssignment\">DHCP</string>" + + "<string name=\"ProxySettings\">NONE</string>" + + "</IpConfiguration>" + + "</Network>" + + "</NetworkList>" + + "</WifiBackupData>"; + + private static final String WIFI_BACKUP_DATA_V1_1 = + "<?xml version='1.0' encoding='utf-8' standalone='yes' ?>" + + "<WifiBackupData>" + + "<float name=\"Version\" value=\"1.1\" />" + + "<NetworkList>" + + "<Network>" + + "<WifiConfiguration>" + + "<string name=\"ConfigKey\">"GoogleGuest-Legacy"NONE</string>" + + "<string name=\"SSID\">"GoogleGuest-Legacy"</string>" + + "<null name=\"BSSID\" />" + + "<null name=\"PreSharedKey\" />" + + "<null name=\"WEPKeys\" />" + + "<int name=\"WEPTxKeyIndex\" value=\"0\" />" + + "<boolean name=\"HiddenSSID\" value=\"false\" />" + + "<boolean name=\"RequirePMF\" value=\"false\" />" + + "<byte-array name=\"AllowedKeyMgmt\" num=\"1\">01</byte-array>" + + "<byte-array name=\"AllowedProtocols\" num=\"1\">03</byte-array>" + + "<byte-array name=\"AllowedAuthAlgos\" num=\"1\">01</byte-array>" + + "<byte-array name=\"AllowedGroupCiphers\" num=\"1\">0f</byte-array>" + + "<byte-array name=\"AllowedPairwiseCiphers\" num=\"1\">06</byte-array>" + + "<boolean name=\"Shared\" value=\"true\" />" + + "<int name=\"MeteredOverride\" value=\"1\" />" + + "</WifiConfiguration>" + + "<IpConfiguration>" + + "<string name=\"IpAssignment\">DHCP</string>" + + "<string name=\"ProxySettings\">NONE</string>" + + "</IpConfiguration>" + + "</Network>" + + "</NetworkList>" + + "</WifiBackupData>"; + @Mock WifiPermissionsUtil mWifiPermissionsUtil; private WifiBackupRestore mWifiBackupRestore; private boolean mCheckDump = true; @@ -867,6 +928,84 @@ public class WifiBackupRestoreTest { } /** + * Verify that restoring of configuration from a 1.0 version backup data. + */ + @Test + public void testRestoreFromV1_0BackupData() { + List<WifiConfiguration> configurations = new ArrayList<>(); + configurations.add(createNetworkForConfigurationWithV1_0Data()); + + byte[] backupData = WIFI_BACKUP_DATA_V1_0.getBytes(); + List<WifiConfiguration> retrievedConfigurations = + mWifiBackupRestore.retrieveConfigurationsFromBackupData(backupData); + WifiConfigurationTestUtil.assertConfigurationsEqualForBackup( + configurations, retrievedConfigurations); + + // No valid data to check in dump. + mCheckDump = false; + } + + /** + * Creates correct WiFiConfiguration that should be parsed out of + * {@link #WIFI_BACKUP_DATA_V1_0} configuration which contains 1.0 version backup. + */ + private static WifiConfiguration createNetworkForConfigurationWithV1_0Data() { + final WifiConfiguration config = new WifiConfiguration(); + config.SSID = "\"GoogleGuest-Legacy\""; + config.wepTxKeyIndex = 0; + config.hiddenSSID = false; + config.requirePMF = false; + config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); + config.allowedProtocols.set(WifiConfiguration.Protocol.WPA); + config.allowedProtocols.set(WifiConfiguration.Protocol.RSN); + config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN); + config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40); + config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104); + config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP); + config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP); + config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP); + config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP); + config.shared = true; + + IpConfiguration ipConfiguration = new IpConfiguration(); + ipConfiguration.setIpAssignment(IpConfiguration.IpAssignment.DHCP); + ipConfiguration.setProxySettings(IpConfiguration.ProxySettings.NONE); + config.setIpConfiguration(ipConfiguration); + + return config; + } + + /** + * Verify that restoring of configuration from a 1.1 version backup data. + */ + @Test + public void testRestoreFromV1_1BackupData() { + List<WifiConfiguration> configurations = new ArrayList<>(); + configurations.add(createNetworkForConfigurationWithV1_1Data()); + + byte[] backupData = WIFI_BACKUP_DATA_V1_1.getBytes(); + List<WifiConfiguration> retrievedConfigurations = + mWifiBackupRestore.retrieveConfigurationsFromBackupData(backupData); + WifiConfigurationTestUtil.assertConfigurationsEqualForBackup( + configurations, retrievedConfigurations); + + // No valid data to check in dump. + mCheckDump = false; + } + + /** + * Creates correct WiFiConfiguration that should be parsed out of + * {@link #WIFI_BACKUP_DATA_V1_1} configuration which contains 1.1 version backup. + */ + private static WifiConfiguration createNetworkForConfigurationWithV1_1Data() { + final WifiConfiguration config = createNetworkForConfigurationWithV1_0Data(); + config.meteredOverride = WifiConfiguration.METERED_OVERRIDE_METERED; + + return config; + } + + + /** * Helper method to write a list of networks in wpa_supplicant.conf format to the output stream. */ private byte[] createWpaSupplicantConfBackupData(List<WifiConfiguration> configurations) { diff --git a/tests/wifitests/src/com/android/server/wifi/WifiConfigurationTestUtil.java b/tests/wifitests/src/com/android/server/wifi/WifiConfigurationTestUtil.java index d274b3365..cdc9590b9 100644 --- a/tests/wifitests/src/com/android/server/wifi/WifiConfigurationTestUtil.java +++ b/tests/wifitests/src/com/android/server/wifi/WifiConfigurationTestUtil.java @@ -473,11 +473,12 @@ public class WifiConfigurationTestUtil { /** * Asserts that the 2 WifiConfigurations are equal. This only compares the elements saved - * fpr backup/restore. + * for backup/restore. */ public static void assertConfigurationEqualForBackup( WifiConfiguration expected, WifiConfiguration actual) { assertCommonConfigurationElementsEqual(expected, actual); + assertEquals(expected.meteredOverride, actual.meteredOverride); } /** |