Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Unified Diff: chrome/android/junit/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetectorTest.java

Issue 2205953006: [WebAPKs] Do not request WebAPK update when Web Manifest scope did not change (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merge branch 'master' into webapk_updater_images30 Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetector.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 180622b7e85c397a848428d95c9f6001b00c4d08..f7ae559207dd8021df98eea333b15e9bae8012dd 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
@@ -13,6 +13,7 @@ import android.os.Bundle;
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.content_public.common.ScreenOrientationValues;
import org.chromium.testing.local.LocalRobolectricTestRunner;
@@ -191,6 +192,43 @@ public class ManifestUpgradeDetectorTest {
}
/**
+ * Test that an upgrade is not requested when the Web Manifest did not change and the Web
+ * Manifest scope is empty.
+ */
+ @Test
+ public void testManifestEmptyScopeShouldNotUpgrade() {
+ Data oldData = new Data();
+ // webapk_installer.cc sets the scope to the default scope if the scope is empty.
+ oldData.scopeUrl = ShortcutHelper.getScopeFromUrl(oldData.startUrl);
+ Data fetchedData = new Data();
+ fetchedData.scopeUrl = "";
+ Assert.assertTrue(!oldData.scopeUrl.equals(fetchedData.scopeUrl));
+
+ TestManifestUpgradeDetector detector = createDetector(oldData, fetchedData);
+ detector.start();
+ Assert.assertTrue(detector.mCompleted);
+ Assert.assertFalse(detector.mIsUpgraded);
+ }
+
+ /**
+ * Test that an upgrade is requested when the Web Manifest is updated from using a non-empty
+ * scope to an empty scope.
+ */
+ @Test
+ public void testManifestNonEmptyScopeToEmptyScopeShouldUpgrade() {
+ Data oldData = new Data();
+ oldData.startUrl = "/fancy/scope/special/snowflake.html";
+ oldData.scopeUrl = "/fancy/scope/";
+ Assert.assertTrue(
+ !oldData.scopeUrl.equals(ShortcutHelper.getScopeFromUrl(oldData.startUrl)));
+ Data fetchedData = new Data();
+ fetchedData.startUrl = "/fancy/scope/special/snowflake.html";
+ fetchedData.scopeUrl = "";
+
+ TestManifestUpgradeDetector detector = createDetector(oldData, fetchedData);
+ }
+
+ /**
* Test that an upgrade is requested when:
* - WebAPK was generated using icon at {@link WEBAPK_ICON_URL} from Web Manifest.
* - Bitmap at {@link WEBAPK_ICON_URL} has changed.
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/webapps/ManifestUpgradeDetector.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698