Index: chrome/browser/services/gcm/push_messaging_browsertest.cc |
diff --git a/chrome/browser/services/gcm/push_messaging_browsertest.cc b/chrome/browser/services/gcm/push_messaging_browsertest.cc |
index 6dfd3b1ac50d09073524549acca3712bdec53ab3..eef660b2dea9669c65e7a1b10b2ceebed9325d07 100644 |
--- a/chrome/browser/services/gcm/push_messaging_browsertest.cc |
+++ b/chrome/browser/services/gcm/push_messaging_browsertest.cc |
@@ -141,7 +141,7 @@ class PushMessagingBrowserTest : public InProcessBrowserTest { |
InProcessBrowserTest::SetUpOnMainThread(); |
} |
- void loadTestPage() { |
+ virtual void loadTestPage() { |
ui_test_utils::NavigateToURL( |
browser(), https_server_->GetURL("files/push_messaging/test.html")); |
} |
@@ -169,7 +169,27 @@ class PushMessagingBrowserTest : public InProcessBrowserTest { |
DISALLOW_COPY_AND_ASSIGN(PushMessagingBrowserTest); |
}; |
-IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterSuccess) { |
+class PushMessagingBadManifestBrowserTest : public PushMessagingBrowserTest { |
+ void loadTestPage() override { |
+ ui_test_utils::NavigateToURL( |
+ browser(), |
+ https_server()->GetURL("files/push_messaging/test_bad_manifest.html")); |
Michael van Ouwerkerk
2014/12/11 15:55:35
Well, if you really prefer to use a subclass: all
Miguel Garcia
2014/12/11 16:20:07
Done.
|
+ }; |
+}; |
+ |
+IN_PROC_BROWSER_TEST_F(PushMessagingBadManifestBrowserTest, |
+ RegisterFailsNotVisibleMessages) { |
+ std::string script_result; |
+ |
+ ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
+ ASSERT_EQ("ok - service worker registered", script_result); |
+ ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
+ EXPECT_EQ("AbortError - Registration failed - permission denied", |
+ script_result); |
+} |
+ |
+IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
+ RegisterSuccessNotificationsGranted) { |
std::string script_result; |
ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
@@ -188,15 +208,19 @@ IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterSuccess) { |
} |
IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
- RegisterFailureNoPushPermission) { |
+ RegisterSuccessNotificationsPrompt) { |
std::string script_result; |
ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
ASSERT_EQ("ok - service worker registered", script_result); |
+ InfoBarResponder accepting_responder(browser(), true); |
ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
- EXPECT_EQ("AbortError - Registration failed - permission denied", |
- script_result); |
+ EXPECT_EQ(std::string(kPushMessagingEndpoint) + " - 1", script_result); |
+ |
+ PushMessagingApplicationId app_id(https_server()->GetURL(""), 0L); |
+ EXPECT_EQ(app_id.ToString(), gcm_service()->last_registered_app_id()); |
+ EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
} |
IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
@@ -215,7 +239,7 @@ IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
script_result); |
} |
-IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterFailureNoSenderId) { |
+IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterFailureNoManifest) { |
std::string script_result; |
ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |