Index: chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappDataStorageTest.java |
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappDataStorageTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappDataStorageTest.java |
index 6cfc8f4a7e177f798de10627a3ca106856d5d93b..3461d96cd5abe877d1540225dc7346f210c8742b 100644 |
--- a/chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappDataStorageTest.java |
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappDataStorageTest.java |
@@ -32,6 +32,20 @@ public class WebappDataStorageTest { |
private SharedPreferences mSharedPreferences; |
private boolean mCallbackCalled; |
+ private class FetchCallback<T> implements WebappDataStorage.FetchCallback<T> { |
+ FetchCallback(T expected) { |
+ mExpected = expected; |
+ } |
+ |
+ @Override |
+ public void onDataRetrieved(T readObject) { |
+ mCallbackCalled = true; |
+ assertEquals(mExpected, readObject); |
+ } |
+ |
+ T mExpected; |
gone
2016/03/10 23:27:22
Put this field up at the top.
dominickn
2016/03/11 05:14:43
Done.
|
+ } |
+ |
@Before |
public void setUp() throws Exception { |
mSharedPreferences = Robolectric.application |
@@ -49,6 +63,7 @@ public class WebappDataStorageTest { |
assertEquals("webapp_", WebappDataStorage.SHARED_PREFS_FILE_PREFIX); |
assertEquals("splash_icon", WebappDataStorage.KEY_SPLASH_ICON); |
assertEquals("last_used", WebappDataStorage.KEY_LAST_USED); |
+ assertEquals("origin_url", WebappDataStorage.KEY_ORIGIN_URL); |
} |
@Test |
@@ -59,13 +74,7 @@ public class WebappDataStorageTest { |
.commit(); |
WebappDataStorage.getLastUsedTime(Robolectric.application, "test", |
- new WebappDataStorage.FetchCallback<Long>() { |
- @Override |
- public void onDataRetrieved(Long readObject) { |
- mCallbackCalled = true; |
- assertEquals(100L, (long) readObject); |
- } |
- }); |
+ new FetchCallback<Long>(new Long(100L))); |
BackgroundShadowAsyncTask.runBackgroundTasks(); |
Robolectric.runUiThreadTasks(); |
@@ -143,4 +152,32 @@ public class WebappDataStorageTest { |
private static Bitmap createBitmap() { |
return Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_4444); |
} |
-} |
+ |
+ @Test |
+ @Feature({"Webapp"}) |
+ public void testOriginUrlRetrieval() throws Exception { |
+ final String origin = "http://drive.google.com"; |
+ mSharedPreferences.edit() |
+ .putString(WebappDataStorage.KEY_ORIGIN_URL, origin) |
+ .commit(); |
+ |
+ WebappDataStorage.getOriginUrl(Robolectric.application, "test", |
+ new FetchCallback<String>(origin)); |
+ BackgroundShadowAsyncTask.runBackgroundTasks(); |
+ Robolectric.runUiThreadTasks(); |
+ |
+ assertTrue(mCallbackCalled); |
+ } |
+ |
+ @Test |
+ @Feature({"Webapp"}) |
+ public void testOriginUrlUpdate() throws Exception { |
+ final String origin = "http://maps.google.com"; |
+ |
+ WebappDataStorage.updateOriginUrl(Robolectric.application, "test", origin); |
+ BackgroundShadowAsyncTask.runBackgroundTasks(); |
+ Robolectric.runUiThreadTasks(); |
+ |
+ assertEquals(origin, mSharedPreferences.getString(WebappDataStorage.KEY_ORIGIN_URL, null)); |
+ } |
+} |