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

Side by Side Diff: chrome/browser/services/gcm/push_messaging_browsertest.cc

Issue 718203004: [PUSH] Merge notifications and push messaging prompts (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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 unified diff | Download patch
OLDNEW
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698