summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoshan Pius <rpius@google.com>2019-07-02 12:26:41 -0700
committerRoshan Pius <rpius@google.com>2019-07-02 13:26:34 -0700
commit7abed5d4cf741aca02836d06664263dc1e3aa699 (patch)
treefcec130dab89d969a4255fcd722e1cc9c1cf8a44
parentd2aff57d0254d5597bb0e771fa20a2093c2e04ca (diff)
WifiNetworkSuggestionsManager: Persist user approval immediately
User approval decisions are not currently triggering a disk persistence. If the app does not modify any of it's suggestions, then this approval bit may not get persisted. Bug: 136565650 Test: atest com.android.server.wifi Test: NetworkSuggestion ACTS test Change-Id: I8796132fa3cc6356b9f4d43c9d3ffcdd72f7c89a
-rw-r--r--service/java/com/android/server/wifi/WifiNetworkSuggestionsManager.java1
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java8
2 files changed, 9 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/WifiNetworkSuggestionsManager.java b/service/java/com/android/server/wifi/WifiNetworkSuggestionsManager.java
index c2aade90b..6a5db5d23 100644
--- a/service/java/com/android/server/wifi/WifiNetworkSuggestionsManager.java
+++ b/service/java/com/android/server/wifi/WifiNetworkSuggestionsManager.java
@@ -714,6 +714,7 @@ public class WifiNetworkSuggestionsManager {
Log.v(TAG, "Setting the app " + (approved ? "approved" : "not approved"));
}
perAppInfo.hasUserApproved = approved;
+ saveToStore();
}
/**
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java b/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java
index ca7c13e31..ade54bd14 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiNetworkSuggestionsManagerTest.java
@@ -1817,6 +1817,10 @@ public class WifiNetworkSuggestionsManagerTest {
// Cancel the notification.
verify(mNotificationManger).cancel(SystemMessage.NOTE_NETWORK_SUGGESTION_AVAILABLE);
+ // Verify config store interactions.
+ verify(mWifiConfigManager, times(2)).saveToStore(true);
+ assertTrue(mDataSource.hasNewDataToSerialize());
+
reset(mNotificationManger);
// We should not resend the notification next time the network is found in scan results.
mWifiNetworkSuggestionsManager.getNetworkSuggestionsForScanDetail(
@@ -1858,6 +1862,10 @@ public class WifiNetworkSuggestionsManagerTest {
// Cancel the notification.
verify(mNotificationManger).cancel(SystemMessage.NOTE_NETWORK_SUGGESTION_AVAILABLE);
+ // Verify config store interactions.
+ verify(mWifiConfigManager, times(2)).saveToStore(true);
+ assertTrue(mDataSource.hasNewDataToSerialize());
+
reset(mNotificationManger);
// Now trigger the app-ops callback to ensure we remove all of their suggestions.