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

Unified Diff: chrome/browser/installable/installable_manager_browsertest.cc

Issue 2778983005: Allow the app banner installability check to run on page load. (Closed)
Patch Set: Fix enum in test + minor improvements Created 3 years, 9 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
Index: chrome/browser/installable/installable_manager_browsertest.cc
diff --git a/chrome/browser/installable/installable_manager_browsertest.cc b/chrome/browser/installable/installable_manager_browsertest.cc
index f809328ae86c428a862ed8959fa9726de9451997..3b0ab38dc001d7092a6ceea7dc7bb3d3eec7c3d0 100644
--- a/chrome/browser/installable/installable_manager_browsertest.cc
+++ b/chrome/browser/installable/installable_manager_browsertest.cc
@@ -200,6 +200,9 @@ class InstallableManagerBrowserTest : public InProcessBrowserTest {
return manager;
}
+ InstallableMetrics::InstallabilityCheckStatus GetStatus() {
+ return GetManager()->page_status_;
+ }
};
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
@@ -237,6 +240,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckNoManifest) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_MANIFEST, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifest404) {
@@ -260,6 +264,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifest404) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(MANIFEST_EMPTY, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifestOnly) {
@@ -281,6 +286,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifestOnly) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
@@ -305,6 +311,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
@@ -330,6 +337,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
// Ask for a primary icon (but don't navigate). This should fail with
@@ -352,6 +360,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ACCEPTABLE_ICON, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
// Ask for everything except badge icon. This should fail with
@@ -375,6 +384,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ACCEPTABLE_ICON, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_NON_PWA);
}
// Ask for a different size primary icon. This should fail with
@@ -400,6 +410,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(START_URL_NOT_VALID, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_NON_PWA);
}
}
@@ -423,6 +434,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifestAndIcon) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
// Add to homescreen checks for manifest + primary icon + badge icon.
@@ -443,6 +455,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifestAndIcon) {
EXPECT_NE(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
// Request an oversized badge icon. This should fetch only the manifest and
@@ -467,6 +480,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckManifestAndIcon) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
}
@@ -489,6 +503,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckWebapp) {
EXPECT_TRUE(tester->badge_icon_url().is_empty());
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_PWA);
// Verify that the returned state matches manager internal state.
InstallableManager* manager = GetManager();
@@ -523,6 +538,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckWebapp) {
EXPECT_TRUE(tester->badge_icon_url().is_empty());
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_PWA);
// Verify that the returned state matches manager internal state.
InstallableManager* manager = GetManager();
@@ -573,6 +589,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckWebappInIframe) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_MANIFEST, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_NON_PWA);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
@@ -597,6 +614,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
// Fetch the full criteria should fail.
@@ -617,6 +635,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_MATCHING_SERVICE_WORKER, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_NON_PWA);
}
}
@@ -642,6 +661,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NOT_OFFLINE_CAPABLE, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_NON_PWA);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckDataUrlIcon) {
@@ -665,6 +685,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest, CheckDataUrlIcon) {
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_TRUE(tester->is_installable());
EXPECT_EQ(NO_ERROR_DETECTED, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::COMPLETE_PWA);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
@@ -688,6 +709,7 @@ IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,
EXPECT_EQ(nullptr, tester->badge_icon());
EXPECT_FALSE(tester->is_installable());
EXPECT_EQ(NO_ICON_AVAILABLE, tester->error_code());
+ EXPECT_EQ(GetStatus(), InstallableMetrics::NOT_STARTED);
}
IN_PROC_BROWSER_TEST_F(InstallableManagerBrowserTest,

Powered by Google App Engine
This is Rietveld 408576698