Index: chrome/android/javatests/src/org/chromium/chrome/browser/preferences/privacy/ClearBrowsingDataPreferencesTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/privacy/ClearBrowsingDataPreferencesTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/privacy/ClearBrowsingDataPreferencesTest.java |
index e6b92c24f41c5ad42fb0b1c7f1d7202fb3c8f26b..b8837d5dda78216c0f5f77e4e5463145f414ad4c 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/privacy/ClearBrowsingDataPreferencesTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/privacy/ClearBrowsingDataPreferencesTest.java |
@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.preferences.ButtonPreference; |
import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
import org.chromium.chrome.browser.preferences.Preferences; |
import org.chromium.chrome.browser.preferences.privacy.ClearBrowsingDataPreferences.DialogOption; |
+import org.chromium.chrome.browser.webapps.TestFetchStorageCallback; |
import org.chromium.chrome.browser.webapps.WebappDataStorage; |
import org.chromium.chrome.browser.webapps.WebappRegistry; |
import org.chromium.chrome.test.ChromeActivityTestCaseBase; |
@@ -39,7 +40,6 @@ import java.net.URL; |
import java.util.Arrays; |
import java.util.HashSet; |
import java.util.List; |
-import java.util.Set; |
/** |
* Integration tests for ClearBrowsingDataPreferences. |
@@ -48,22 +48,6 @@ import java.util.Set; |
public class ClearBrowsingDataPreferencesTest |
extends ChromeActivityTestCaseBase<ChromeActivity> { |
private EmbeddedTestServer mTestServer; |
- private boolean mCallbackCalled; |
- |
- private class CallbackCriteria extends Criteria { |
- public CallbackCriteria() { |
- mCallbackCalled = false; |
- } |
- |
- @Override |
- public boolean isSatisfied() { |
- if (mCallbackCalled) { |
- mCallbackCalled = false; |
- return true; |
- } |
- return false; |
- } |
- } |
@Override |
protected void setUp() throws Exception { |
@@ -104,15 +88,11 @@ public class ClearBrowsingDataPreferencesTest |
*/ |
@MediumTest |
public void testClearingSiteDataClearsWebapps() throws Exception { |
- WebappRegistry.registerWebapp("first", null); |
- WebappRegistry.getRegisteredWebappIds(new WebappRegistry.FetchCallback() { |
- @Override |
- public void onWebappIdsRetrieved(Set<String> ids) { |
- assertEquals(new HashSet<String>(Arrays.asList("first")), ids); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
+ TestFetchStorageCallback callback = new TestFetchStorageCallback(); |
+ WebappRegistry.getInstance().register("first", callback); |
+ callback.waitForCallback(0); |
+ assertEquals(new HashSet<String>(Arrays.asList("first")), |
+ WebappRegistry.getRegisteredWebappIdsForTesting()); |
setDataTypesToClear(Arrays.asList(DialogOption.CLEAR_COOKIES_AND_SITE_DATA)); |
final ClearBrowsingDataPreferences preferences = |
@@ -131,14 +111,7 @@ public class ClearBrowsingDataPreferencesTest |
}); |
waitForProgressToComplete(preferences); |
- WebappRegistry.getRegisteredWebappIds(new WebappRegistry.FetchCallback() { |
- @Override |
- public void onWebappIdsRetrieved(Set<String> ids) { |
- assertTrue(ids.isEmpty()); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
+ assertTrue(WebappRegistry.getRegisteredWebappIdsForTesting().isEmpty()); |
} |
/** |
@@ -155,23 +128,13 @@ public class ClearBrowsingDataPreferencesTest |
}; |
final Intent shortcutIntent = shortcutIntentTask.execute().get(); |
- WebappRegistry.registerWebapp("first", new WebappRegistry.FetchWebappDataStorageCallback() { |
- @Override |
- public void onWebappDataStorageRetrieved(WebappDataStorage storage) { |
- storage.updateFromShortcutIntent(shortcutIntent); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
+ TestFetchStorageCallback callback = new TestFetchStorageCallback(); |
+ WebappRegistry.getInstance().register("first", callback); |
+ callback.waitForCallback(0); |
+ callback.getStorage().updateFromShortcutIntent(shortcutIntent); |
- WebappRegistry.getRegisteredWebappIds(new WebappRegistry.FetchCallback() { |
- @Override |
- public void onWebappIdsRetrieved(Set<String> ids) { |
- assertEquals(new HashSet<String>(Arrays.asList("first")), ids); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
+ assertEquals(new HashSet<String>(Arrays.asList("first")), |
+ WebappRegistry.getRegisteredWebappIdsForTesting()); |
setDataTypesToClear(Arrays.asList(DialogOption.CLEAR_HISTORY)); |
final ClearBrowsingDataPreferences preferences = |
@@ -190,45 +153,14 @@ public class ClearBrowsingDataPreferencesTest |
}); |
waitForProgressToComplete(preferences); |
- // The web app should still exist in the registry. |
- WebappRegistry.getRegisteredWebappIds(new WebappRegistry.FetchCallback() { |
- @Override |
- public void onWebappIdsRetrieved(Set<String> ids) { |
- assertEquals(new HashSet<String>(Arrays.asList("first")), ids); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
+ assertEquals(new HashSet<String>(Arrays.asList("first")), |
+ WebappRegistry.getRegisteredWebappIdsForTesting()); |
- // URL and scope should be empty. |
- WebappDataStorage.getScope("first", new WebappDataStorage.FetchCallback<String>() { |
- @Override |
- public void onDataRetrieved(String readObject) { |
- assertEquals(readObject, ""); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
- |
- WebappDataStorage.getUrl("first", new WebappDataStorage.FetchCallback<String>() { |
- @Override |
- public void onDataRetrieved(String readObject) { |
- assertEquals(readObject, ""); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
- |
- // The last used time should be 0. |
- WebappDataStorage.getLastUsedTime("first", new WebappDataStorage.FetchCallback<Long>() { |
- @Override |
- public void onDataRetrieved(Long readObject) { |
- long lastUsed = readObject; |
- assertEquals(lastUsed, 0); |
- mCallbackCalled = true; |
- } |
- }); |
- CriteriaHelper.pollUiThread(new CallbackCriteria()); |
+ // URL and scope should be empty, and last used time should be 0. |
+ WebappDataStorage storage = WebappRegistry.getInstance().getWebappDataStorage("first"); |
+ assertEquals("", storage.getScope()); |
+ assertEquals("", storage.getUrl()); |
+ assertEquals(0, storage.getLastUsedTime()); |
} |
/** |