Chromium Code Reviews| Index: chrome/android/junit/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetectorTest.java |
| diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetectorTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetectorTest.java |
| index 442fffe290e716e6a790ead556310628c4e22d49..1f5ba2906f4de64b8543a9dd442eb7bcc4843d94 100644 |
| --- a/chrome/android/junit/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetectorTest.java |
| +++ b/chrome/android/junit/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetectorTest.java |
| @@ -4,8 +4,6 @@ |
| package org.chromium.chrome.browser.webapps; |
| -import static org.chromium.chrome.browser.webapps.ManifestUpgradeDetector.FetchedManifestData; |
| - |
| import android.content.Context; |
| import android.graphics.Bitmap; |
| import android.graphics.Color; |
| @@ -27,9 +25,12 @@ import org.chromium.base.ContextUtils; |
| import org.chromium.blink_public.platform.WebDisplayMode; |
| import org.chromium.chrome.browser.ShortcutHelper; |
| import org.chromium.chrome.browser.tab.Tab; |
| +import org.chromium.chrome.browser.webapps.ManifestUpgradeDetector.FetchedManifestData; |
| import org.chromium.content_public.common.ScreenOrientationValues; |
| import org.chromium.testing.local.LocalRobolectricTestRunner; |
| +import java.util.HashSet; |
| + |
| /** |
| * Tests the ManifestUpgradeDetector. |
| */ |
| @@ -97,8 +98,9 @@ public class ManifestUpgradeDetectorTest { |
| ManifestUpgradeDetectorFetcher.Callback callback = |
| (ManifestUpgradeDetectorFetcher.Callback) invocation.getArguments()[0]; |
| callback.onGotManifestData(mFetchedData.startUrl, mFetchedData.scopeUrl, |
| - mFetchedData.name, mFetchedData.shortName, mFetchedData.iconUrl, |
| + mFetchedData.name, mFetchedData.shortName, mFetchedData.bestIconUrl, |
| mFetchedData.iconMurmur2Hash, mFetchedData.icon, |
| + mFetchedData.iconUrls.toArray(new String[mFetchedData.iconUrls.size()]), |
|
pkotwicz
2016/11/01 00:29:49
Is this more correct:
mFetchedData.iconUrls.toArra
Xi Han
2016/11/07 16:51:42
Done.
|
| mFetchedData.displayMode, mFetchedData.orientation, |
| mFetchedData.themeColor, mFetchedData.backgroundColor); |
| return null; |
| @@ -157,9 +159,11 @@ public class ManifestUpgradeDetectorTest { |
| data.scopeUrl = WEBAPK_SCOPE_URL; |
| data.name = WEBAPK_NAME; |
| data.shortName = WEBAPK_SHORT_NAME; |
| - data.iconUrl = WEBAPK_ICON_URL; |
| + data.bestIconUrl = WEBAPK_ICON_URL; |
| data.iconMurmur2Hash = WEBAPK_ICON_MURMUR2_HASH; |
| data.icon = createBitmap(Color.GREEN); |
| + data.iconUrls = new HashSet<String>(); |
| + data.iconUrls.add(data.bestIconUrl); |
| data.displayMode = WEBAPK_DISPLAY_MODE; |
| data.orientation = WEBAPK_ORIENTATION; |
| data.themeColor = WEBAPK_THEME_COLOR; |
| @@ -190,8 +194,9 @@ public class ManifestUpgradeDetectorTest { |
| metaData.orientation = oldData.orientation; |
| metaData.themeColor = oldData.themeColor; |
| metaData.backgroundColor = oldData.backgroundColor; |
| - metaData.iconUrl = oldData.iconUrl; |
| + metaData.bestIconUrl = oldData.bestIconUrl; |
| metaData.iconMurmur2Hash = oldData.iconMurmur2Hash; |
| + metaData.iconUrls = oldData.iconUrls; |
| return new TestManifestUpgradeDetector(null, metaData, fetchedData, callback); |
| } |
| @@ -284,7 +289,22 @@ public class ManifestUpgradeDetectorTest { |
| @Test |
| public void testHomescreenIconUrlChangeShouldUpgrade() { |
| FetchedManifestData fetchedData = createDefaultFetchedManifestData(); |
| - fetchedData.iconUrl = "/icon2.png"; |
| + fetchedData.bestIconUrl = "/icon2.png"; |
| + |
| + TestCallback callback = new TestCallback(); |
| + TestManifestUpgradeDetector detector = createDetectorWithFetchedData(fetchedData, callback); |
| + detector.start(); |
| + Assert.assertTrue(callback.mWasCalled); |
| + Assert.assertTrue(callback.mIsUpgraded); |
| + } |
| + |
| + /** |
| + * Test that an upgrade is requested when a new icon URL is added to the Web Manifest. |
| + */ |
| + @Test |
| + public void testIconUrlsChangeShouleUpgrade() { |
| + FetchedManifestData fetchedData = createDefaultFetchedManifestData(); |
| + fetchedData.iconUrls.add("/icon2.png"); |
| TestCallback callback = new TestCallback(); |
| TestManifestUpgradeDetector detector = createDetectorWithFetchedData(fetchedData, callback); |