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

Unified Diff: chrome/browser/notifications/notification_interactive_uitest.cc

Issue 2925203003: Add a test for Notification.permission. (Closed)
Patch Set: Created 3 years, 6 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 | « no previous file | chrome/browser/notifications/notification_interactive_uitest_support.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/notifications/notification_interactive_uitest.cc
diff --git a/chrome/browser/notifications/notification_interactive_uitest.cc b/chrome/browser/notifications/notification_interactive_uitest.cc
index 52e0d2597fa16303f9b1e9a5756963b3eb75581b..ee42f66c689447599008b02e434fd9d3438eb15d 100644
--- a/chrome/browser/notifications/notification_interactive_uitest.cc
+++ b/chrome/browser/notifications/notification_interactive_uitest.cc
@@ -235,6 +235,33 @@ IN_PROC_BROWSER_TEST_F(NotificationsTest, TestClosePermissionRequestUI) {
EXPECT_EQ(0U, settings.size());
}
+IN_PROC_BROWSER_TEST_F(NotificationsTest, TestPermissionAPI) {
+ EnablePermissionsEmbargo();
+ ASSERT_TRUE(embedded_test_server()->Start());
+
+ // Test that Notification.permission returns the right thing.
+ ui_test_utils::NavigateToURL(browser(), GetTestPageURL());
+ EXPECT_EQ("default", QueryPermissionStatus(browser()));
+
+ AllowOrigin(GetTestPageURL().GetOrigin());
+ EXPECT_EQ("granted", QueryPermissionStatus(browser()));
+
+ DenyOrigin(GetTestPageURL().GetOrigin());
+ EXPECT_EQ("denied", QueryPermissionStatus(browser()));
+
+ DropOriginPreference(GetTestPageURL().GetOrigin());
+
+ // Verify embargo behaviour - automatically blocked after 3 dismisses.
+ ASSERT_TRUE(RequestAndDismissPermission(browser()));
+ EXPECT_EQ("default", QueryPermissionStatus(browser()));
+
+ ASSERT_TRUE(RequestAndDismissPermission(browser()));
+ EXPECT_EQ("default", QueryPermissionStatus(browser()));
+
+ ASSERT_TRUE(RequestAndDismissPermission(browser()));
+ EXPECT_EQ("denied", QueryPermissionStatus(browser()));
+}
+
IN_PROC_BROWSER_TEST_F(NotificationsTest, TestAllowNotificationsFromAllSites) {
ASSERT_TRUE(embedded_test_server()->Start());
« no previous file with comments | « no previous file | chrome/browser/notifications/notification_interactive_uitest_support.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698