| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <map> | 5 #include <map> |
| 6 #include <string> | 6 #include <string> |
| 7 | 7 |
| 8 #include "base/bind.h" | 8 #include "base/bind.h" |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 DISALLOW_COPY_AND_ASSIGN(PushMessagingBrowserTest); | 139 DISALLOW_COPY_AND_ASSIGN(PushMessagingBrowserTest); |
| 140 }; | 140 }; |
| 141 | 141 |
| 142 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterSuccess) { | 142 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterSuccess) { |
| 143 std::string script_result; | 143 std::string script_result; |
| 144 | 144 |
| 145 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 145 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 146 ASSERT_EQ("ok - service worker registered", script_result); | 146 ASSERT_EQ("ok - service worker registered", script_result); |
| 147 | 147 |
| 148 InfoBarResponder accepting_responder(browser(), true); | 148 InfoBarResponder accepting_responder(browser(), true); |
| 149 ASSERT_TRUE(RunScript("requestNotificationPermission()", &script_result)); |
| 150 ASSERT_EQ("permission status - granted", script_result); |
| 149 | 151 |
| 150 ASSERT_TRUE(RunScript("registerPush()", &script_result)); | 152 ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
| 151 EXPECT_EQ(std::string(kPushMessagingEndpoint) + " - 1", script_result); | 153 EXPECT_EQ(std::string(kPushMessagingEndpoint) + " - 1", script_result); |
| 152 | 154 |
| 153 PushMessagingApplicationId app_id(https_server()->GetURL(""), 0L); | 155 PushMessagingApplicationId app_id(https_server()->GetURL(""), 0L); |
| 154 EXPECT_EQ(app_id.ToString(), gcm_service()->last_registered_app_id()); | 156 EXPECT_EQ(app_id.ToString(), gcm_service()->last_registered_app_id()); |
| 155 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 157 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 156 } | 158 } |
| 157 | 159 |
| 158 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterFailureNoPermission) { | 160 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 161 RegisterFailureNoPushPermission) { |
| 162 std::string script_result; |
| 163 |
| 164 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 165 ASSERT_EQ("ok - service worker registered", script_result); |
| 166 |
| 167 ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
| 168 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 169 script_result); |
| 170 } |
| 171 |
| 172 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 173 RegisterFailureNotificationsBlocked) { |
| 159 std::string script_result; | 174 std::string script_result; |
| 160 | 175 |
| 161 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 176 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 162 ASSERT_EQ("ok - service worker registered", script_result); | 177 ASSERT_EQ("ok - service worker registered", script_result); |
| 163 | 178 |
| 164 InfoBarResponder cancelling_responder(browser(), false); | 179 InfoBarResponder cancelling_responder(browser(), false); |
| 180 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); |
| 181 ASSERT_EQ("permission status - denied", script_result); |
| 165 | 182 |
| 166 ASSERT_TRUE(RunScript("registerPush()", &script_result)); | 183 ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
| 167 EXPECT_EQ("AbortError - Registration failed - permission denied", | 184 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 168 script_result); | 185 script_result); |
| 169 } | 186 } |
| 170 | 187 |
| 171 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterFailureNoSenderId) { | 188 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, RegisterFailureNoSenderId) { |
| 172 std::string script_result; | 189 std::string script_result; |
| 173 | 190 |
| 174 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 191 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 175 ASSERT_EQ("ok - service worker registered", script_result); | 192 ASSERT_EQ("ok - service worker registered", script_result); |
| 176 | 193 |
| 177 InfoBarResponder accepting_responder(browser(), true); | 194 InfoBarResponder accepting_responder(browser(), true); |
| 195 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); |
| 196 ASSERT_EQ("permission status - granted", script_result); |
| 178 | 197 |
| 179 ASSERT_TRUE(RunScript("removeManifest()", &script_result)); | 198 ASSERT_TRUE(RunScript("removeManifest()", &script_result)); |
| 180 ASSERT_EQ("manifest removed", script_result); | 199 ASSERT_EQ("manifest removed", script_result); |
| 181 | 200 |
| 182 ASSERT_TRUE(RunScript("registerPush()", &script_result)); | 201 ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
| 183 EXPECT_EQ("AbortError - Registration failed - no sender id provided", | 202 EXPECT_EQ("AbortError - Registration failed - no sender id provided", |
| 184 script_result); | 203 script_result); |
| 185 } | 204 } |
| 186 | 205 |
| 187 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PushEventSuccess) { | 206 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PushEventSuccess) { |
| 188 std::string script_result; | 207 std::string script_result; |
| 189 | 208 |
| 190 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 209 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 191 ASSERT_EQ("ok - service worker registered", script_result); | 210 ASSERT_EQ("ok - service worker registered", script_result); |
| 192 | 211 |
| 193 InfoBarResponder accepting_responder(browser(), true); | 212 InfoBarResponder accepting_responder(browser(), true); |
| 213 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); |
| 214 ASSERT_EQ("permission status - granted", script_result); |
| 194 | 215 |
| 195 ASSERT_TRUE(RunScript("registerPush()", &script_result)); | 216 ASSERT_TRUE(RunScript("registerPush()", &script_result)); |
| 196 EXPECT_EQ(std::string(kPushMessagingEndpoint) + " - 1", script_result); | 217 EXPECT_EQ(std::string(kPushMessagingEndpoint) + " - 1", script_result); |
| 197 | 218 |
| 198 PushMessagingApplicationId app_id(https_server()->GetURL(""), 0L); | 219 PushMessagingApplicationId app_id(https_server()->GetURL(""), 0L); |
| 199 EXPECT_EQ(app_id.ToString(), gcm_service()->last_registered_app_id()); | 220 EXPECT_EQ(app_id.ToString(), gcm_service()->last_registered_app_id()); |
| 200 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 221 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 201 | 222 |
| 202 ASSERT_TRUE(RunScript("isControlled()", &script_result)); | 223 ASSERT_TRUE(RunScript("isControlled()", &script_result)); |
| 203 ASSERT_EQ("false - is not controlled", script_result); | 224 ASSERT_EQ("false - is not controlled", script_result); |
| 204 | 225 |
| 205 loadTestPage(); // Reload to become controlled. | 226 loadTestPage(); // Reload to become controlled. |
| 206 | 227 |
| 207 ASSERT_TRUE(RunScript("isControlled()", &script_result)); | 228 ASSERT_TRUE(RunScript("isControlled()", &script_result)); |
| 208 ASSERT_EQ("true - is controlled", script_result); | 229 ASSERT_EQ("true - is controlled", script_result); |
| 209 | 230 |
| 210 GCMClient::IncomingMessage message; | 231 GCMClient::IncomingMessage message; |
| 211 GCMClient::MessageData messageData; | 232 GCMClient::MessageData messageData; |
| 212 messageData.insert(std::pair<std::string, std::string>("data", "testdata")); | 233 messageData.insert(std::pair<std::string, std::string>("data", "testdata")); |
| 213 message.data = messageData; | 234 message.data = messageData; |
| 214 push_service()->OnMessage(app_id.ToString(), message); | 235 push_service()->OnMessage(app_id.ToString(), message); |
| 215 ASSERT_TRUE(RunScript("pushData.get()", &script_result)); | 236 ASSERT_TRUE(RunScript("pushData.get()", &script_result)); |
| 216 EXPECT_EQ("testdata", script_result); | 237 EXPECT_EQ("testdata", script_result); |
| 217 } | 238 } |
| 218 | 239 |
| 219 } // namespace gcm | 240 } // namespace gcm |
| OLD | NEW |