summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorRoshan Pius <rpius@google.com>2019-06-26 11:07:21 -0700
committerRoshan Pius <rpius@google.com>2019-06-27 17:35:52 +0000
commitdf6df476c9632bbda18a81e058d5cbccf2b35618 (patch)
tree999b4504754443459c9a16e8b3166c25ac1433d7 /tests
parent6c4828d0046b43d7f827bf326cbc555578ba7317 (diff)
WifiNetworkSuggestionsManager: Persist enterprise credentials
Enterprise credentials for suggestions were not being persisted to disk. This would prevent the device from auto-connecting to networks suggested by apps (via the new network suggestion API surface) after a reboot. Bug: 136088495 Test: atest com.android.server.wifi Test: ACTS test: NetworkSuggestionTest Test: Verified scenario mentioned in the bug (carrier wifi app suggested EAP networks not connecting). Change-Id: Ife2cff3daf84a5986cb2b63207eccf1b6faee5ae
Diffstat (limited to 'tests')
-rw-r--r--tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java25
1 files changed, 21 insertions, 4 deletions
diff --git a/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java b/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java
index eeaf5cd00..5c1dcb459 100644
--- a/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/NetworkSuggestionStoreDataTest.java
@@ -19,6 +19,7 @@ package com.android.server.wifi;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
+import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiNetworkSuggestion;
import android.util.Xml;
@@ -150,15 +151,30 @@ public class NetworkSuggestionStoreDataTest {
Map<String, PerAppInfo> networkSuggestionsMap = new HashMap<>();
PerAppInfo appInfo = new PerAppInfo(TEST_PACKAGE_NAME_1);
- WifiNetworkSuggestion networkSuggestion = new WifiNetworkSuggestion(
- WifiConfigurationTestUtil.createOpenNetwork(), false, false, TEST_UID_1,
+
+ WifiConfiguration configuration = WifiConfigurationTestUtil.createEapNetwork();
+ configuration.enterpriseConfig =
+ WifiConfigurationTestUtil.createPEAPWifiEnterpriseConfigWithGTCPhase2();
+ WifiNetworkSuggestion networkSuggestion =
+ new WifiNetworkSuggestion(configuration, false, false, TEST_UID_1,
TEST_PACKAGE_NAME_1);
appInfo.hasUserApproved = false;
appInfo.extNetworkSuggestions.add(
ExtendedWifiNetworkSuggestion.fromWns(networkSuggestion, appInfo));
networkSuggestionsMap.put(TEST_PACKAGE_NAME_1, appInfo);
- assertSerializeDeserialize(networkSuggestionsMap);
+ Map<String, PerAppInfo> deserializedPerAppInfoMap =
+ assertSerializeDeserialize(networkSuggestionsMap);
+ ExtendedWifiNetworkSuggestion deserializedSuggestion =
+ deserializedPerAppInfoMap.get(TEST_PACKAGE_NAME_1).extNetworkSuggestions.stream()
+ .findAny()
+ .orElse(null);
+
+ WifiConfigurationTestUtil.assertConfigurationEqual(
+ configuration, deserializedSuggestion.wns.wifiConfiguration);
+ WifiConfigurationTestUtil.assertWifiEnterpriseConfigEqualForConfigStore(
+ configuration.enterpriseConfig,
+ deserializedSuggestion.wns.wifiConfiguration.enterpriseConfig);
}
/**
@@ -237,7 +253,7 @@ public class NetworkSuggestionStoreDataTest {
deserializeData(TEST_CORRUPT_DATA_INVALID_SSID.getBytes());
}
- private void assertSerializeDeserialize(
+ private Map<String, PerAppInfo> assertSerializeDeserialize(
Map<String, PerAppInfo> networkSuggestionsMap) throws Exception {
// Setup the data to serialize.
when(mDataSource.toSerialize()).thenReturn(networkSuggestionsMap);
@@ -250,5 +266,6 @@ public class NetworkSuggestionStoreDataTest {
ArgumentCaptor.forClass(HashMap.class);
verify(mDataSource).fromDeserialized(deserializedNetworkSuggestionsMap.capture());
assertEquals(networkSuggestionsMap, deserializedNetworkSuggestionsMap.getValue());
+ return deserializedNetworkSuggestionsMap.getValue();
}
}