Chromium Code Reviews| 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/barrier_closure.h" | 8 #include "base/barrier_closure.h" |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| 11 #include "base/message_loop/message_loop.h" | 11 #include "base/message_loop/message_loop.h" |
| 12 #include "base/run_loop.h" | 12 #include "base/run_loop.h" |
| 13 #include "base/strings/utf_string_conversions.h" | 13 #include "base/strings/utf_string_conversions.h" |
| 14 #include "base/test/test_timeouts.h" | |
| 15 #include "base/time/time.h" | |
| 14 #include "chrome/browser/browsing_data/browsing_data_helper.h" | 16 #include "chrome/browser/browsing_data/browsing_data_helper.h" |
| 15 #include "chrome/browser/browsing_data/browsing_data_remover.h" | 17 #include "chrome/browser/browsing_data/browsing_data_remover.h" |
| 16 #include "chrome/browser/browsing_data/browsing_data_remover_test_util.h" | 18 #include "chrome/browser/browsing_data/browsing_data_remover_test_util.h" |
| 17 #include "chrome/browser/infobars/infobar_responder.h" | 19 #include "chrome/browser/infobars/infobar_responder.h" |
| 18 #include "chrome/browser/infobars/infobar_service.h" | 20 #include "chrome/browser/infobars/infobar_service.h" |
| 19 #include "chrome/browser/notifications/notification_test_util.h" | 21 #include "chrome/browser/notifications/notification_test_util.h" |
| 20 #include "chrome/browser/notifications/platform_notification_service_impl.h" | 22 #include "chrome/browser/notifications/platform_notification_service_impl.h" |
| 21 #include "chrome/browser/profiles/profile.h" | 23 #include "chrome/browser/profiles/profile.h" |
| 22 #include "chrome/browser/push_messaging/push_messaging_app_identifier.h" | 24 #include "chrome/browser/push_messaging/push_messaging_app_identifier.h" |
| 23 #include "chrome/browser/push_messaging/push_messaging_constants.h" | 25 #include "chrome/browser/push_messaging/push_messaging_constants.h" |
| 24 #include "chrome/browser/push_messaging/push_messaging_service_factory.h" | 26 #include "chrome/browser/push_messaging/push_messaging_service_factory.h" |
| 25 #include "chrome/browser/push_messaging/push_messaging_service_impl.h" | 27 #include "chrome/browser/push_messaging/push_messaging_service_impl.h" |
| 26 #include "chrome/browser/services/gcm/fake_gcm_profile_service.h" | 28 #include "chrome/browser/services/gcm/fake_gcm_profile_service.h" |
| 27 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" | 29 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" |
| 28 #include "chrome/browser/ui/browser.h" | 30 #include "chrome/browser/ui/browser.h" |
| 29 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 31 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| 32 #include "chrome/browser/ui/website_settings/mock_permission_bubble_view.h" | |
| 33 #include "chrome/browser/ui/website_settings/permission_bubble_manager.h" | |
| 34 #include "chrome/common/chrome_switches.h" | |
| 30 #include "chrome/test/base/in_process_browser_test.h" | 35 #include "chrome/test/base/in_process_browser_test.h" |
| 31 #include "chrome/test/base/ui_test_utils.h" | 36 #include "chrome/test/base/ui_test_utils.h" |
| 32 #include "components/content_settings/core/browser/host_content_settings_map.h" | 37 #include "components/content_settings/core/browser/host_content_settings_map.h" |
| 33 #include "components/content_settings/core/common/content_settings.h" | 38 #include "components/content_settings/core/common/content_settings.h" |
| 34 #include "components/content_settings/core/common/content_settings_types.h" | 39 #include "components/content_settings/core/common/content_settings_types.h" |
| 35 #include "components/gcm_driver/gcm_client.h" | 40 #include "components/gcm_driver/gcm_client.h" |
| 36 #include "content/public/browser/web_contents.h" | 41 #include "content/public/browser/web_contents.h" |
| 37 #include "content/public/common/content_switches.h" | 42 #include "content/public/common/content_switches.h" |
| 38 #include "content/public/test/browser_test_utils.h" | 43 #include "content/public/test/browser_test_utils.h" |
| 39 #include "content/public/test/test_utils.h" | 44 #include "content/public/test/test_utils.h" |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 62 return app_id_; | 67 return app_id_; |
| 63 } | 68 } |
| 64 | 69 |
| 65 private: | 70 private: |
| 66 scoped_refptr<content::MessageLoopRunner> message_loop_runner_; | 71 scoped_refptr<content::MessageLoopRunner> message_loop_runner_; |
| 67 std::string app_id_; | 72 std::string app_id_; |
| 68 }; | 73 }; |
| 69 | 74 |
| 70 } // namespace | 75 } // namespace |
| 71 | 76 |
| 72 class PushMessagingBrowserTest : public InProcessBrowserTest { | 77 class PushMessagingBrowserTest : public InProcessBrowserTest, |
| 78 public testing::WithParamInterface<bool> { | |
| 73 public: | 79 public: |
| 74 PushMessagingBrowserTest() : gcm_service_(nullptr) {} | 80 PushMessagingBrowserTest() |
| 81 : tiny_timeout_ms_( | |
| 82 std::to_string(TestTimeouts::tiny_timeout().InMillisecondsF())), | |
|
johnme
2015/06/02 14:12:38
Nit: base::IntToString seems more common.
| |
| 83 gcm_service_(nullptr) {} | |
| 75 ~PushMessagingBrowserTest() override {} | 84 ~PushMessagingBrowserTest() override {} |
| 76 | 85 |
| 77 // InProcessBrowserTest: | 86 // InProcessBrowserTest: |
| 78 void SetUpCommandLine(base::CommandLine* command_line) override { | 87 void SetUpCommandLine(base::CommandLine* command_line) override { |
| 79 command_line->AppendSwitch(switches::kEnablePushMessagePayload); | 88 command_line->AppendSwitch(switches::kEnablePushMessagePayload); |
| 80 | 89 |
| 90 #if !defined(OS_ANDROID) && !defined(OS_IOS) | |
| 91 if (GetParam()) | |
| 92 command_line->AppendSwitch(switches::kEnablePermissionsBubbles); | |
| 93 else | |
| 94 command_line->AppendSwitch(switches::kDisablePermissionsBubbles); | |
|
johnme
2015/06/02 14:12:38
Since these tests only run on desktop (unfortunate
| |
| 95 #endif | |
| 96 | |
| 81 InProcessBrowserTest::SetUpCommandLine(command_line); | 97 InProcessBrowserTest::SetUpCommandLine(command_line); |
| 82 } | 98 } |
| 83 | 99 |
| 84 // InProcessBrowserTest: | 100 // InProcessBrowserTest: |
| 85 void SetUp() override { | 101 void SetUp() override { |
| 86 https_server_.reset(new net::SpawnedTestServer( | 102 https_server_.reset(new net::SpawnedTestServer( |
| 87 net::SpawnedTestServer::TYPE_HTTPS, | 103 net::SpawnedTestServer::TYPE_HTTPS, |
| 88 net::BaseTestServer::SSLOptions( | 104 net::BaseTestServer::SSLOptions( |
| 89 net::BaseTestServer::SSLOptions::CERT_OK), | 105 net::BaseTestServer::SSLOptions::CERT_OK), |
| 90 base::FilePath(FILE_PATH_LITERAL("chrome/test/data/")))); | 106 base::FilePath(FILE_PATH_LITERAL("chrome/test/data/")))); |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 123 } | 139 } |
| 124 | 140 |
| 125 void LoadTestPage(const std::string& path) { | 141 void LoadTestPage(const std::string& path) { |
| 126 ui_test_utils::NavigateToURL(GetBrowser(), https_server_->GetURL(path)); | 142 ui_test_utils::NavigateToURL(GetBrowser(), https_server_->GetURL(path)); |
| 127 } | 143 } |
| 128 | 144 |
| 129 void LoadTestPage() { | 145 void LoadTestPage() { |
| 130 LoadTestPage(GetTestURL()); | 146 LoadTestPage(GetTestURL()); |
| 131 } | 147 } |
| 132 | 148 |
| 149 bool RunScript(const std::string& script) { | |
| 150 return content::ExecuteScript( | |
| 151 GetBrowser()->tab_strip_model()->GetActiveWebContents()->GetMainFrame(), | |
| 152 script); | |
| 153 } | |
| 154 | |
| 133 bool RunScript(const std::string& script, std::string* result) { | 155 bool RunScript(const std::string& script, std::string* result) { |
| 134 return RunScript(script, result, nullptr); | 156 return RunScript(script, result, nullptr); |
| 135 } | 157 } |
| 136 | 158 |
| 137 bool RunScript(const std::string& script, std::string* result, | 159 bool RunScript(const std::string& script, std::string* result, |
| 138 content::WebContents* web_contents) { | 160 content::WebContents* web_contents) { |
| 139 if (!web_contents) | 161 if (!web_contents) |
| 140 web_contents = GetBrowser()->tab_strip_model()->GetActiveWebContents(); | 162 web_contents = GetBrowser()->tab_strip_model()->GetActiveWebContents(); |
| 141 return content::ExecuteScriptAndExtractString(web_contents->GetMainFrame(), | 163 return content::ExecuteScriptAndExtractString(web_contents->GetMainFrame(), |
| 142 script, | 164 script, |
| 143 result); | 165 result); |
| 144 } | 166 } |
| 145 | 167 |
| 168 void RequestAndAcceptPermission(); | |
| 169 void RequestAndDenyPermission(); | |
| 170 | |
| 146 void TryToSubscribeSuccessfully( | 171 void TryToSubscribeSuccessfully( |
| 147 const std::string& expected_push_subscription_id); | 172 const std::string& expected_push_subscription_id); |
| 148 | 173 |
| 149 std::string GetEndpointForSubscriptionId(const std::string& subscription_id) { | 174 std::string GetEndpointForSubscriptionId(const std::string& subscription_id) { |
| 150 return std::string(kPushMessagingEndpoint) + "/" + subscription_id; | 175 return std::string(kPushMessagingEndpoint) + "/" + subscription_id; |
| 151 } | 176 } |
| 152 | 177 |
| 153 PushMessagingAppIdentifier GetAppIdentifierForServiceWorkerRegistration( | 178 PushMessagingAppIdentifier GetAppIdentifierForServiceWorkerRegistration( |
| 154 int64 service_worker_registration_id); | 179 int64 service_worker_registration_id); |
| 155 | 180 |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 166 return notification_manager_.get(); | 191 return notification_manager_.get(); |
| 167 } | 192 } |
| 168 | 193 |
| 169 PlatformNotificationServiceImpl* notification_service() const { | 194 PlatformNotificationServiceImpl* notification_service() const { |
| 170 return PlatformNotificationServiceImpl::GetInstance(); | 195 return PlatformNotificationServiceImpl::GetInstance(); |
| 171 } | 196 } |
| 172 #endif | 197 #endif |
| 173 | 198 |
| 174 PushMessagingServiceImpl* push_service() const { return push_service_; } | 199 PushMessagingServiceImpl* push_service() const { return push_service_; } |
| 175 | 200 |
| 201 std::string tiny_timeout_ms_; | |
| 202 | |
| 176 protected: | 203 protected: |
| 177 virtual std::string GetTestURL() { | 204 virtual std::string GetTestURL() { |
| 178 return "files/push_messaging/test.html"; | 205 return "files/push_messaging/test.html"; |
| 179 } | 206 } |
| 180 | 207 |
| 181 virtual Browser* GetBrowser() const { return browser(); } | 208 virtual Browser* GetBrowser() const { return browser(); } |
| 182 | 209 |
| 183 InfoBarService* GetInfoBarService() { | 210 InfoBarService* GetInfoBarService() { |
| 184 return InfoBarService::FromWebContents( | 211 return InfoBarService::FromWebContents( |
| 185 GetBrowser()->tab_strip_model()->GetActiveWebContents()); | 212 GetBrowser()->tab_strip_model()->GetActiveWebContents()); |
| (...skipping 21 matching lines...) Expand all Loading... | |
| 207 } | 234 } |
| 208 }; | 235 }; |
| 209 | 236 |
| 210 class PushMessagingBrowserTestEmptySubscriptionOptions | 237 class PushMessagingBrowserTestEmptySubscriptionOptions |
| 211 : public PushMessagingBrowserTest { | 238 : public PushMessagingBrowserTest { |
| 212 std::string GetTestURL() override { | 239 std::string GetTestURL() override { |
| 213 return "files/push_messaging/test_no_subscription_options.html"; | 240 return "files/push_messaging/test_no_subscription_options.html"; |
| 214 } | 241 } |
| 215 }; | 242 }; |
| 216 | 243 |
| 217 IN_PROC_BROWSER_TEST_F(PushMessagingBadManifestBrowserTest, | 244 IN_PROC_BROWSER_TEST_P(PushMessagingBadManifestBrowserTest, |
| 218 SubscribeFailsNotVisibleMessages) { | 245 SubscribeFailsNotVisibleMessages) { |
| 219 std::string script_result; | 246 std::string script_result; |
| 220 | 247 |
| 221 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 248 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 222 ASSERT_EQ("ok - service worker registered", script_result); | 249 ASSERT_EQ("ok - service worker registered", script_result); |
| 223 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 250 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 224 EXPECT_EQ("AbortError - Registration failed - permission denied", | 251 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 225 script_result); | 252 script_result); |
| 226 } | 253 } |
| 227 | 254 |
| 255 void PushMessagingBrowserTest::RequestAndAcceptPermission() { | |
| 256 std::string script_result; | |
| 257 | |
| 258 if (PermissionBubbleManager::Enabled()) { | |
| 259 PermissionBubbleManager* bubble_manager = | |
| 260 PermissionBubbleManager::FromWebContents( | |
| 261 GetBrowser()->tab_strip_model()->GetActiveWebContents()); | |
| 262 scoped_ptr<MockPermissionBubbleView> mock_bubble_view( | |
| 263 new MockPermissionBubbleView()); | |
| 264 bubble_manager->SetView(mock_bubble_view.get()); | |
|
johnme
2015/06/02 14:12:38
This is super-complicated, compared to 2 lines for
| |
| 265 mock_bubble_view->SetBrowserTest(true); | |
|
johnme
2015/06/02 14:12:38
It seems kinda hacky that MockPermissionBubbleView
| |
| 266 ASSERT_TRUE( | |
| 267 RunScript("requestNotificationPermission(" + tiny_timeout_ms_ + ");")); | |
| 268 if (!mock_bubble_view->IsVisible()) | |
| 269 content::RunMessageLoop(); | |
|
johnme
2015/06/02 14:12:38
Why are you running a message loop here? Note that
| |
| 270 mock_bubble_view->Accept(); | |
| 271 bubble_manager->SetView(NULL); | |
| 272 } else { | |
| 273 InfoBarResponder accepting_responder(GetInfoBarService(), true); | |
| 274 ASSERT_TRUE( | |
| 275 RunScript("requestNotificationPermission(" + tiny_timeout_ms_ + ");")); | |
|
johnme
2015/06/02 14:12:38
requestNotificationPermission method doesn't take
| |
| 276 } | |
| 277 EXPECT_TRUE(RunScript("getLastPermissionRequestResult();", &script_result)); | |
|
johnme
2015/06/02 14:12:38
getLastPermissionRequestResult takes a timeout par
| |
| 278 EXPECT_EQ("permission status - granted", script_result); | |
| 279 } | |
| 280 | |
| 281 void PushMessagingBrowserTest::RequestAndDenyPermission() { | |
| 282 std::string script_result; | |
| 283 | |
| 284 if (PermissionBubbleManager::Enabled()) { | |
| 285 PermissionBubbleManager* bubble_manager = | |
| 286 PermissionBubbleManager::FromWebContents( | |
| 287 GetBrowser()->tab_strip_model()->GetActiveWebContents()); | |
| 288 scoped_ptr<MockPermissionBubbleView> mock_bubble_view( | |
| 289 new MockPermissionBubbleView()); | |
| 290 bubble_manager->SetView(mock_bubble_view.get()); | |
| 291 mock_bubble_view->SetBrowserTest(true); | |
| 292 ASSERT_TRUE( | |
|
johnme
2015/06/02 14:12:38
Last I checked, you couldn't use ASSERT_TRUE in he
| |
| 293 RunScript("requestNotificationPermission(" + tiny_timeout_ms_ + ");")); | |
| 294 if (!mock_bubble_view->IsVisible()) | |
| 295 content::RunMessageLoop(); | |
| 296 mock_bubble_view->Deny(); | |
| 297 bubble_manager->SetView(NULL); | |
| 298 } else { | |
| 299 InfoBarResponder cancelling_responder(GetInfoBarService(), false); | |
| 300 ASSERT_TRUE( | |
| 301 RunScript("requestNotificationPermission(" + tiny_timeout_ms_ + ");")); | |
| 302 } | |
| 303 ASSERT_TRUE(RunScript("getLastPermissionRequestResult();", &script_result)); | |
| 304 EXPECT_EQ("permission status - denied", script_result); | |
| 305 } | |
| 306 | |
| 228 void PushMessagingBrowserTest::TryToSubscribeSuccessfully( | 307 void PushMessagingBrowserTest::TryToSubscribeSuccessfully( |
| 229 const std::string& expected_push_subscription_id) { | 308 const std::string& expected_push_subscription_id) { |
| 230 std::string script_result; | 309 std::string script_result; |
| 231 | 310 |
| 232 EXPECT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 311 EXPECT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 233 EXPECT_EQ("ok - service worker registered", script_result); | 312 EXPECT_EQ("ok - service worker registered", script_result); |
| 234 | 313 |
| 235 InfoBarResponder accepting_responder(GetInfoBarService(), true); | 314 // Request permission if it hasn't already been requested. |
| 236 EXPECT_TRUE(RunScript("requestNotificationPermission()", &script_result)); | 315 ASSERT_TRUE(RunScript("permissionState();", &script_result)); |
| 237 EXPECT_EQ("permission status - granted", script_result); | 316 if (script_result == "permission status - prompt") |
| 317 RequestAndAcceptPermission(); | |
| 238 | 318 |
| 239 EXPECT_TRUE(RunScript("subscribePush()", &script_result)); | 319 EXPECT_TRUE(RunScript("subscribePush()", &script_result)); |
| 240 EXPECT_EQ(GetEndpointForSubscriptionId(expected_push_subscription_id), | 320 EXPECT_EQ(GetEndpointForSubscriptionId(expected_push_subscription_id), |
| 241 script_result); | 321 script_result); |
| 242 } | 322 } |
| 243 | 323 |
| 244 PushMessagingAppIdentifier | 324 PushMessagingAppIdentifier |
| 245 PushMessagingBrowserTest::GetAppIdentifierForServiceWorkerRegistration( | 325 PushMessagingBrowserTest::GetAppIdentifierForServiceWorkerRegistration( |
| 246 int64 service_worker_registration_id) { | 326 int64 service_worker_registration_id) { |
| 247 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 327 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 248 PushMessagingAppIdentifier app_identifier = | 328 PushMessagingAppIdentifier app_identifier = |
| 249 PushMessagingAppIdentifier::FindByServiceWorker( | 329 PushMessagingAppIdentifier::FindByServiceWorker( |
| 250 GetBrowser()->profile(), origin, service_worker_registration_id); | 330 GetBrowser()->profile(), origin, service_worker_registration_id); |
| 251 EXPECT_FALSE(app_identifier.is_null()); | 331 EXPECT_FALSE(app_identifier.is_null()); |
| 252 return app_identifier; | 332 return app_identifier; |
| 253 } | 333 } |
| 254 | 334 |
| 255 void PushMessagingBrowserTest::SendMessageAndWaitUntilHandled( | 335 void PushMessagingBrowserTest::SendMessageAndWaitUntilHandled( |
| 256 const PushMessagingAppIdentifier& app_identifier, | 336 const PushMessagingAppIdentifier& app_identifier, |
| 257 const gcm::GCMClient::IncomingMessage& message) { | 337 const gcm::GCMClient::IncomingMessage& message) { |
| 258 base::RunLoop run_loop; | 338 base::RunLoop run_loop; |
| 259 push_service()->SetMessageCallbackForTesting(run_loop.QuitClosure()); | 339 push_service()->SetMessageCallbackForTesting(run_loop.QuitClosure()); |
| 260 push_service()->OnMessage(app_identifier.app_id(), message); | 340 push_service()->OnMessage(app_identifier.app_id(), message); |
| 261 run_loop.Run(); | 341 run_loop.Run(); |
| 262 } | 342 } |
| 263 | 343 |
| 264 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 344 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 265 SubscribeSuccessNotificationsGranted) { | 345 SubscribeSuccessNotificationsGranted) { |
| 266 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 346 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 267 | 347 |
| 268 PushMessagingAppIdentifier app_identifier = | 348 PushMessagingAppIdentifier app_identifier = |
| 269 GetAppIdentifierForServiceWorkerRegistration(0LL); | 349 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 270 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 350 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 271 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 351 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 272 } | 352 } |
| 273 | 353 |
| 274 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 354 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 275 SubscribeSuccessNotificationsPrompt) { | 355 SubscribeSuccessNotificationsPrompt) { |
| 276 std::string script_result; | 356 std::string script_result; |
| 277 | 357 |
| 278 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 358 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 279 ASSERT_EQ("ok - service worker registered", script_result); | 359 ASSERT_EQ("ok - service worker registered", script_result); |
| 280 | 360 |
| 281 InfoBarResponder accepting_responder(GetInfoBarService(), true); | 361 RequestAndAcceptPermission(); |
| 362 | |
| 282 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 363 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 283 EXPECT_EQ(GetEndpointForSubscriptionId("1-0"), | 364 EXPECT_EQ(GetEndpointForSubscriptionId("1-0"), script_result); |
| 284 script_result); | |
| 285 | 365 |
| 286 PushMessagingAppIdentifier app_identifier = | 366 PushMessagingAppIdentifier app_identifier = |
| 287 GetAppIdentifierForServiceWorkerRegistration(0LL); | 367 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 288 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 368 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 289 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 369 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 290 } | 370 } |
| 291 | 371 |
| 292 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 372 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 293 SubscribeFailureNotificationsBlocked) { | 373 SubscribeFailureNotificationsBlocked) { |
| 294 std::string script_result; | 374 std::string script_result; |
| 295 | 375 |
| 296 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 376 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 297 ASSERT_EQ("ok - service worker registered", script_result); | 377 ASSERT_EQ("ok - service worker registered", script_result); |
| 298 | 378 |
| 299 InfoBarResponder cancelling_responder(GetInfoBarService(), false); | 379 RequestAndDenyPermission(); |
| 300 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); | |
| 301 ASSERT_EQ("permission status - denied", script_result); | |
| 302 | 380 |
| 303 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 381 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 304 EXPECT_EQ("AbortError - Registration failed - permission denied", | 382 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 305 script_result); | 383 script_result); |
| 306 } | 384 } |
| 307 | 385 |
| 308 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, SubscribeFailureNoManifest) { | 386 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, SubscribeFailureNoManifest) { |
| 309 std::string script_result; | 387 std::string script_result; |
| 310 | 388 |
| 311 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 389 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 312 ASSERT_EQ("ok - service worker registered", script_result); | 390 ASSERT_EQ("ok - service worker registered", script_result); |
| 313 | 391 |
| 314 InfoBarResponder accepting_responder(GetInfoBarService(), true); | 392 RequestAndAcceptPermission(); |
| 315 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); | |
| 316 ASSERT_EQ("permission status - granted", script_result); | |
| 317 | 393 |
| 318 ASSERT_TRUE(RunScript("removeManifest()", &script_result)); | 394 ASSERT_TRUE(RunScript("removeManifest()", &script_result)); |
| 319 ASSERT_EQ("manifest removed", script_result); | 395 ASSERT_EQ("manifest removed", script_result); |
| 320 | 396 |
| 321 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 397 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 322 EXPECT_EQ("AbortError - Registration failed - no sender id provided", | 398 EXPECT_EQ("AbortError - Registration failed - no sender id provided", |
| 323 script_result); | 399 script_result); |
| 324 } | 400 } |
| 325 | 401 |
| 326 // TODO(johnme): Test subscribing from a worker - see https://crbug.com/437298. | 402 // TODO(johnme): Test subscribing from a worker - see https://crbug.com/437298. |
| 327 | 403 |
| 328 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTestEmptySubscriptionOptions, | 404 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTestEmptySubscriptionOptions, |
| 329 RegisterFailureEmptyPushSubscriptionOptions) { | 405 RegisterFailureEmptyPushSubscriptionOptions) { |
| 330 std::string script_result; | 406 std::string script_result; |
| 331 | 407 |
| 332 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 408 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 333 ASSERT_EQ("ok - service worker registered", script_result); | 409 ASSERT_EQ("ok - service worker registered", script_result); |
| 334 | 410 |
| 335 InfoBarResponder accepting_responder(GetInfoBarService(), true); | 411 RequestAndAcceptPermission(); |
| 336 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); | |
| 337 ASSERT_EQ("permission status - granted", script_result); | |
| 338 | 412 |
| 339 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 413 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 340 EXPECT_EQ("AbortError - Registration failed - permission denied", | 414 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 341 script_result); | 415 script_result); |
| 342 } | 416 } |
| 343 | 417 |
| 344 IN_PROC_BROWSER_TEST_F(PushMessagingBadManifestBrowserTest, | 418 IN_PROC_BROWSER_TEST_P(PushMessagingBadManifestBrowserTest, |
| 345 RegisterFailsNotVisibleMessages) { | 419 RegisterFailsNotVisibleMessages) { |
| 346 std::string script_result; | 420 std::string script_result; |
| 347 | 421 |
| 348 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 422 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 349 ASSERT_EQ("ok - service worker registered", script_result); | 423 ASSERT_EQ("ok - service worker registered", script_result); |
| 350 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 424 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 351 EXPECT_EQ("AbortError - Registration failed - permission denied", | 425 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 352 script_result); | 426 script_result); |
| 353 } | 427 } |
| 354 | 428 |
| 355 IN_PROC_BROWSER_TEST_F(PushMessagingManifestUserVisibleOnlyTrueTest, | 429 IN_PROC_BROWSER_TEST_P(PushMessagingManifestUserVisibleOnlyTrueTest, |
| 356 ManifestKeyConsidered) { | 430 ManifestKeyConsidered) { |
| 357 // Chrome 42 introduced the "gcm_user_visible_only" manifest key, but Chrome | 431 // Chrome 42 introduced the "gcm_user_visible_only" manifest key, but Chrome |
| 358 // 43 supersedes this by the standardized PushSubscriptionOptions.userVisible | 432 // 43 supersedes this by the standardized PushSubscriptionOptions.userVisible |
| 359 // option. We maintain support for the manifest key without specifying the | 433 // option. We maintain support for the manifest key without specifying the |
| 360 // subscription option, so verify that it is still being considered. | 434 // subscription option, so verify that it is still being considered. |
| 361 std::string script_result; | 435 std::string script_result; |
| 362 | 436 |
| 363 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 437 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 364 ASSERT_EQ("ok - service worker registered", script_result); | 438 ASSERT_EQ("ok - service worker registered", script_result); |
| 365 | 439 |
| 366 InfoBarResponder accepting_responder(GetInfoBarService(), true); | 440 RequestAndAcceptPermission(); |
| 367 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); | |
| 368 EXPECT_EQ("permission status - granted", script_result); | |
| 369 | 441 |
| 370 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 442 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 371 EXPECT_EQ(GetEndpointForSubscriptionId("1-0"), script_result); | 443 EXPECT_EQ(GetEndpointForSubscriptionId("1-0"), script_result); |
| 372 | 444 |
| 373 // permissionState has been introduced later so it does not | 445 // permissionState has been introduced later so it does not |
| 374 // respect the manifest key. | 446 // respect the manifest key. |
| 375 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 447 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 376 EXPECT_EQ( | 448 EXPECT_EQ( |
| 377 "NotSupportedError - Push subscriptions that don't enable" | 449 "NotSupportedError - Push subscriptions that don't enable" |
| 378 " userVisibleOnly are not supported.", | 450 " userVisibleOnly are not supported.", |
| 379 script_result); | 451 script_result); |
| 380 } | 452 } |
| 381 | 453 |
| 382 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, SubscribePersisted) { | 454 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, SubscribePersisted) { |
| 383 std::string script_result; | 455 std::string script_result; |
| 384 | 456 |
| 385 // First, test that Service Worker registration IDs are assigned in order of | 457 // First, test that Service Worker registration IDs are assigned in order of |
| 386 // registering the Service Workers, and the (fake) push subscription ids are | 458 // registering the Service Workers, and the (fake) push subscription ids are |
| 387 // assigned in order of push subscription (even when these orders are | 459 // assigned in order of push subscription (even when these orders are |
| 388 // different). | 460 // different). |
| 389 | 461 |
| 390 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 462 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 391 PushMessagingAppIdentifier sw0_identifier = | 463 PushMessagingAppIdentifier sw0_identifier = |
| 392 GetAppIdentifierForServiceWorkerRegistration(0LL); | 464 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 429 | 501 |
| 430 LoadTestPage("files/push_messaging/subscope2/test.html"); | 502 LoadTestPage("files/push_messaging/subscope2/test.html"); |
| 431 TryToSubscribeSuccessfully("1-1" /* expected_push_subscription_id */); | 503 TryToSubscribeSuccessfully("1-1" /* expected_push_subscription_id */); |
| 432 EXPECT_EQ(sw1_identifier.app_id(), gcm_service()->last_registered_app_id()); | 504 EXPECT_EQ(sw1_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 433 | 505 |
| 434 LoadTestPage(); | 506 LoadTestPage(); |
| 435 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 507 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 436 EXPECT_EQ(sw1_identifier.app_id(), gcm_service()->last_registered_app_id()); | 508 EXPECT_EQ(sw1_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 437 } | 509 } |
| 438 | 510 |
| 439 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PushEventSuccess) { | 511 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, PushEventSuccess) { |
| 440 std::string script_result; | 512 std::string script_result; |
| 441 | 513 |
| 442 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 514 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 443 | 515 |
| 444 PushMessagingAppIdentifier app_identifier = | 516 PushMessagingAppIdentifier app_identifier = |
| 445 GetAppIdentifierForServiceWorkerRegistration(0LL); | 517 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 446 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 518 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 447 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 519 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 448 | 520 |
| 449 ASSERT_TRUE(RunScript("isControlled()", &script_result)); | 521 ASSERT_TRUE(RunScript("isControlled()", &script_result)); |
| 450 ASSERT_EQ("false - is not controlled", script_result); | 522 ASSERT_EQ("false - is not controlled", script_result); |
| 451 | 523 |
| 452 LoadTestPage(); // Reload to become controlled. | 524 LoadTestPage(); // Reload to become controlled. |
| 453 | 525 |
| 454 ASSERT_TRUE(RunScript("isControlled()", &script_result)); | 526 ASSERT_TRUE(RunScript("isControlled()", &script_result)); |
| 455 ASSERT_EQ("true - is controlled", script_result); | 527 ASSERT_EQ("true - is controlled", script_result); |
| 456 | 528 |
| 457 gcm::GCMClient::IncomingMessage message; | 529 gcm::GCMClient::IncomingMessage message; |
| 458 message.sender_id = "1234567890"; | 530 message.sender_id = "1234567890"; |
| 459 message.data["data"] = "testdata"; | 531 message.data["data"] = "testdata"; |
| 460 push_service()->OnMessage(app_identifier.app_id(), message); | 532 push_service()->OnMessage(app_identifier.app_id(), message); |
| 461 ASSERT_TRUE(RunScript("resultQueue.pop()", &script_result)); | 533 ASSERT_TRUE(RunScript("resultQueue.pop()", &script_result)); |
| 462 EXPECT_EQ("testdata", script_result); | 534 EXPECT_EQ("testdata", script_result); |
| 463 } | 535 } |
| 464 | 536 |
| 465 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PushEventNoServiceWorker) { | 537 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, PushEventNoServiceWorker) { |
| 466 std::string script_result; | 538 std::string script_result; |
| 467 | 539 |
| 468 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 540 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 469 | 541 |
| 470 PushMessagingAppIdentifier app_identifier = | 542 PushMessagingAppIdentifier app_identifier = |
| 471 GetAppIdentifierForServiceWorkerRegistration(0LL); | 543 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 472 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 544 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 473 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 545 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 474 | 546 |
| 475 ASSERT_TRUE(RunScript("isControlled()", &script_result)); | 547 ASSERT_TRUE(RunScript("isControlled()", &script_result)); |
| (...skipping 21 matching lines...) Expand all Loading... | |
| 497 | 569 |
| 498 callback.WaitUntilSatisfied(); | 570 callback.WaitUntilSatisfied(); |
| 499 EXPECT_EQ(app_identifier.app_id(), callback.app_id()); | 571 EXPECT_EQ(app_identifier.app_id(), callback.app_id()); |
| 500 | 572 |
| 501 // No push data should have been received. | 573 // No push data should have been received. |
| 502 ASSERT_TRUE(RunScript("resultQueue.popImmediately()", &script_result)); | 574 ASSERT_TRUE(RunScript("resultQueue.popImmediately()", &script_result)); |
| 503 EXPECT_EQ("null", script_result); | 575 EXPECT_EQ("null", script_result); |
| 504 } | 576 } |
| 505 | 577 |
| 506 #if defined(ENABLE_NOTIFICATIONS) | 578 #if defined(ENABLE_NOTIFICATIONS) |
| 507 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 579 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 508 PushEventEnforcesUserVisibleNotification) { | 580 PushEventEnforcesUserVisibleNotification) { |
| 509 std::string script_result; | 581 std::string script_result; |
| 510 | 582 |
| 511 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 583 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 512 | 584 |
| 513 PushMessagingAppIdentifier app_identifier = | 585 PushMessagingAppIdentifier app_identifier = |
| 514 GetAppIdentifierForServiceWorkerRegistration(0LL); | 586 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 515 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 587 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 516 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); | 588 EXPECT_EQ("1234567890", gcm_service()->last_registered_sender_ids()[0]); |
| 517 | 589 |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 594 | 666 |
| 595 // Now that 10 push messages in a row have shown notifications, we should | 667 // Now that 10 push messages in a row have shown notifications, we should |
| 596 // allow the next one to mistakenly not show a notification. | 668 // allow the next one to mistakenly not show a notification. |
| 597 message.data["data"] = "testdata"; | 669 message.data["data"] = "testdata"; |
| 598 SendMessageAndWaitUntilHandled(app_identifier, message); | 670 SendMessageAndWaitUntilHandled(app_identifier, message); |
| 599 ASSERT_TRUE(RunScript("resultQueue.pop()", &script_result, web_contents)); | 671 ASSERT_TRUE(RunScript("resultQueue.pop()", &script_result, web_contents)); |
| 600 EXPECT_EQ("testdata", script_result); | 672 EXPECT_EQ("testdata", script_result); |
| 601 EXPECT_EQ(0u, notification_manager()->GetNotificationCount()); | 673 EXPECT_EQ(0u, notification_manager()->GetNotificationCount()); |
| 602 } | 674 } |
| 603 | 675 |
| 604 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 676 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 605 PushEventNotificationWithoutEventWaitUntil) { | 677 PushEventNotificationWithoutEventWaitUntil) { |
| 606 std::string script_result; | 678 std::string script_result; |
| 607 content::WebContents* web_contents = | 679 content::WebContents* web_contents = |
| 608 GetBrowser()->tab_strip_model()->GetActiveWebContents(); | 680 GetBrowser()->tab_strip_model()->GetActiveWebContents(); |
| 609 | 681 |
| 610 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 682 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 611 | 683 |
| 612 PushMessagingAppIdentifier app_identifier = | 684 PushMessagingAppIdentifier app_identifier = |
| 613 GetAppIdentifierForServiceWorkerRegistration(0LL); | 685 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 614 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 686 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| (...skipping 24 matching lines...) Expand all Loading... | |
| 639 ASSERT_EQ(1u, notification_manager()->GetNotificationCount()); | 711 ASSERT_EQ(1u, notification_manager()->GetNotificationCount()); |
| 640 EXPECT_EQ("push_test_tag", | 712 EXPECT_EQ("push_test_tag", |
| 641 notification_manager()->GetNotificationAt(0).tag()); | 713 notification_manager()->GetNotificationAt(0).tag()); |
| 642 | 714 |
| 643 // Verify that the renderer process hasn't crashed. | 715 // Verify that the renderer process hasn't crashed. |
| 644 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 716 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 645 EXPECT_EQ("permission status - granted", script_result); | 717 EXPECT_EQ("permission status - granted", script_result); |
| 646 } | 718 } |
| 647 #endif | 719 #endif |
| 648 | 720 |
| 649 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PermissionStateSaysPrompt) { | 721 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, PermissionStateSaysPrompt) { |
| 650 std::string script_result; | 722 std::string script_result; |
| 651 | 723 |
| 652 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 724 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 653 ASSERT_EQ("ok - service worker registered", script_result); | 725 ASSERT_EQ("ok - service worker registered", script_result); |
| 654 | 726 |
| 655 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 727 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 656 ASSERT_EQ("permission status - prompt", script_result); | 728 ASSERT_EQ("permission status - prompt", script_result); |
| 657 } | 729 } |
| 658 | 730 |
| 659 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PermissionStateSaysGranted) { | 731 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, PermissionStateSaysGranted) { |
| 660 std::string script_result; | 732 std::string script_result; |
| 661 | 733 |
| 662 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 734 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 663 ASSERT_EQ("ok - service worker registered", script_result); | 735 ASSERT_EQ("ok - service worker registered", script_result); |
| 664 | 736 |
| 665 InfoBarResponder accepting_responder(GetInfoBarService(), true); | 737 RequestAndAcceptPermission(); |
| 666 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); | |
| 667 EXPECT_EQ("permission status - granted", script_result); | |
| 668 | 738 |
| 669 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 739 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 670 EXPECT_EQ(GetEndpointForSubscriptionId("1-0"), | 740 EXPECT_EQ(GetEndpointForSubscriptionId("1-0"), |
| 671 script_result); | 741 script_result); |
| 672 | 742 |
| 673 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 743 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 674 EXPECT_EQ("permission status - granted", script_result); | 744 EXPECT_EQ("permission status - granted", script_result); |
| 675 } | 745 } |
| 676 | 746 |
| 677 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, PermissionStateSaysDenied) { | 747 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, PermissionStateSaysDenied) { |
| 678 std::string script_result; | 748 std::string script_result; |
| 679 | 749 |
| 680 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 750 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 681 ASSERT_EQ("ok - service worker registered", script_result); | 751 ASSERT_EQ("ok - service worker registered", script_result); |
| 682 | 752 |
| 683 InfoBarResponder cancelling_responder(GetInfoBarService(), false); | 753 RequestAndDenyPermission(); |
| 684 ASSERT_TRUE(RunScript("requestNotificationPermission();", &script_result)); | |
| 685 EXPECT_EQ("permission status - denied", script_result); | |
| 686 | 754 |
| 687 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); | 755 ASSERT_TRUE(RunScript("subscribePush()", &script_result)); |
| 688 EXPECT_EQ("AbortError - Registration failed - permission denied", | 756 EXPECT_EQ("AbortError - Registration failed - permission denied", |
| 689 script_result); | 757 script_result); |
| 690 | 758 |
| 691 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 759 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 692 EXPECT_EQ("permission status - denied", script_result); | 760 EXPECT_EQ("permission status - denied", script_result); |
| 693 } | 761 } |
| 694 | 762 |
| 695 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, UnsubscribeSuccess) { | 763 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, UnsubscribeSuccess) { |
| 696 std::string script_result; | 764 std::string script_result; |
| 697 | 765 |
| 698 EXPECT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 766 EXPECT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 699 EXPECT_EQ("ok - service worker registered", script_result); | 767 EXPECT_EQ("ok - service worker registered", script_result); |
| 700 | 768 |
| 701 // Resolves true if there was a subscription. | 769 // Resolves true if there was a subscription. |
| 702 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 770 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 703 gcm_service()->AddExpectedUnregisterResponse(gcm::GCMClient::SUCCESS); | 771 gcm_service()->AddExpectedUnregisterResponse(gcm::GCMClient::SUCCESS); |
| 704 ASSERT_TRUE(RunScript("unsubscribePush()", &script_result)); | 772 ASSERT_TRUE(RunScript("unsubscribePush()", &script_result)); |
| 705 EXPECT_EQ("unsubscribe result: true", script_result); | 773 EXPECT_EQ("unsubscribe result: true", script_result); |
| (...skipping 21 matching lines...) Expand all Loading... | |
| 727 | 795 |
| 728 // Unsubscribing (with an existing reference to a PushSubscription), after | 796 // Unsubscribing (with an existing reference to a PushSubscription), after |
| 729 // unregistering the Service Worker, just means push subscription isn't found. | 797 // unregistering the Service Worker, just means push subscription isn't found. |
| 730 TryToSubscribeSuccessfully("1-3" /* expected_push_subscription_id */); | 798 TryToSubscribeSuccessfully("1-3" /* expected_push_subscription_id */); |
| 731 ASSERT_TRUE(RunScript("unregisterServiceWorker()", &script_result)); | 799 ASSERT_TRUE(RunScript("unregisterServiceWorker()", &script_result)); |
| 732 ASSERT_EQ("service worker unregistration status: true", script_result); | 800 ASSERT_EQ("service worker unregistration status: true", script_result); |
| 733 ASSERT_TRUE(RunScript("unsubscribePush()", &script_result)); | 801 ASSERT_TRUE(RunScript("unsubscribePush()", &script_result)); |
| 734 EXPECT_EQ("unsubscribe result: false", script_result); | 802 EXPECT_EQ("unsubscribe result: false", script_result); |
| 735 } | 803 } |
| 736 | 804 |
| 737 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 805 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 738 GlobalResetPushPermissionUnsubscribes) { | 806 GlobalResetPushPermissionUnsubscribes) { |
| 739 std::string script_result; | 807 std::string script_result; |
| 740 | 808 |
| 741 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 809 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 742 | 810 |
| 743 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 811 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 744 EXPECT_EQ("true - subscribed", script_result); | 812 EXPECT_EQ("true - subscribed", script_result); |
| 745 | 813 |
| 746 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 814 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 747 EXPECT_EQ("permission status - granted", script_result); | 815 EXPECT_EQ("permission status - granted", script_result); |
| 748 | 816 |
| 749 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 817 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 750 new content::MessageLoopRunner; | 818 new content::MessageLoopRunner; |
| 751 push_service()->SetContentSettingChangedCallbackForTesting( | 819 push_service()->SetContentSettingChangedCallbackForTesting( |
| 752 message_loop_runner->QuitClosure()); | 820 message_loop_runner->QuitClosure()); |
| 753 | 821 |
| 754 GetBrowser()->profile()->GetHostContentSettingsMap()-> | 822 GetBrowser()->profile()->GetHostContentSettingsMap()-> |
| 755 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING); | 823 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING); |
| 756 | 824 |
| 757 message_loop_runner->Run(); | 825 message_loop_runner->Run(); |
| 758 | 826 |
| 759 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 827 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 760 EXPECT_EQ("permission status - prompt", script_result); | 828 EXPECT_EQ("permission status - prompt", script_result); |
| 761 | 829 |
| 762 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 830 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 763 EXPECT_EQ("false - not subscribed", script_result); | 831 EXPECT_EQ("false - not subscribed", script_result); |
| 764 } | 832 } |
| 765 | 833 |
| 766 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 834 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 767 LocalResetPushPermissionUnsubscribes) { | 835 LocalResetPushPermissionUnsubscribes) { |
| 768 std::string script_result; | 836 std::string script_result; |
| 769 | 837 |
| 770 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 838 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 771 | 839 |
| 772 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 840 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 773 EXPECT_EQ("true - subscribed", script_result); | 841 EXPECT_EQ("true - subscribed", script_result); |
| 774 | 842 |
| 775 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 843 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 776 EXPECT_EQ("permission status - granted", script_result); | 844 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 13 matching lines...) Expand all Loading... | |
| 790 | 858 |
| 791 message_loop_runner->Run(); | 859 message_loop_runner->Run(); |
| 792 | 860 |
| 793 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 861 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 794 EXPECT_EQ("permission status - prompt", script_result); | 862 EXPECT_EQ("permission status - prompt", script_result); |
| 795 | 863 |
| 796 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 864 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 797 EXPECT_EQ("false - not subscribed", script_result); | 865 EXPECT_EQ("false - not subscribed", script_result); |
| 798 } | 866 } |
| 799 | 867 |
| 800 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 868 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 801 DenyPushPermissionUnsubscribes) { | 869 DenyPushPermissionUnsubscribes) { |
| 802 std::string script_result; | 870 std::string script_result; |
| 803 | 871 |
| 804 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 872 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 805 | 873 |
| 806 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 874 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 807 EXPECT_EQ("true - subscribed", script_result); | 875 EXPECT_EQ("true - subscribed", script_result); |
| 808 | 876 |
| 809 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 877 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 810 EXPECT_EQ("permission status - granted", script_result); | 878 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 13 matching lines...) Expand all Loading... | |
| 824 | 892 |
| 825 message_loop_runner->Run(); | 893 message_loop_runner->Run(); |
| 826 | 894 |
| 827 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 895 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 828 EXPECT_EQ("permission status - denied", script_result); | 896 EXPECT_EQ("permission status - denied", script_result); |
| 829 | 897 |
| 830 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 898 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 831 EXPECT_EQ("false - not subscribed", script_result); | 899 EXPECT_EQ("false - not subscribed", script_result); |
| 832 } | 900 } |
| 833 | 901 |
| 834 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 902 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 835 GlobalResetNotificationsPermissionUnsubscribes) { | 903 GlobalResetNotificationsPermissionUnsubscribes) { |
| 836 std::string script_result; | 904 std::string script_result; |
| 837 | 905 |
| 838 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 906 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 839 | 907 |
| 840 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 908 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 841 EXPECT_EQ("true - subscribed", script_result); | 909 EXPECT_EQ("true - subscribed", script_result); |
| 842 | 910 |
| 843 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 911 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 844 EXPECT_EQ("permission status - granted", script_result); | 912 EXPECT_EQ("permission status - granted", script_result); |
| 845 | 913 |
| 846 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 914 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 847 new content::MessageLoopRunner; | 915 new content::MessageLoopRunner; |
| 848 push_service()->SetContentSettingChangedCallbackForTesting( | 916 push_service()->SetContentSettingChangedCallbackForTesting( |
| 849 message_loop_runner->QuitClosure()); | 917 message_loop_runner->QuitClosure()); |
| 850 | 918 |
| 851 GetBrowser()->profile()->GetHostContentSettingsMap()-> | 919 GetBrowser()->profile()->GetHostContentSettingsMap()-> |
| 852 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS); | 920 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS); |
| 853 | 921 |
| 854 message_loop_runner->Run(); | 922 message_loop_runner->Run(); |
| 855 | 923 |
| 856 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 924 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 857 EXPECT_EQ("permission status - prompt", script_result); | 925 EXPECT_EQ("permission status - prompt", script_result); |
| 858 | 926 |
| 859 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 927 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 860 EXPECT_EQ("false - not subscribed", script_result); | 928 EXPECT_EQ("false - not subscribed", script_result); |
| 861 } | 929 } |
| 862 | 930 |
| 863 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 931 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 864 LocalResetNotificationsPermissionUnsubscribes) { | 932 LocalResetNotificationsPermissionUnsubscribes) { |
| 865 std::string script_result; | 933 std::string script_result; |
| 866 | 934 |
| 867 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 935 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 868 | 936 |
| 869 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 937 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 870 EXPECT_EQ("true - subscribed", script_result); | 938 EXPECT_EQ("true - subscribed", script_result); |
| 871 | 939 |
| 872 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 940 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 873 EXPECT_EQ("permission status - granted", script_result); | 941 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 13 matching lines...) Expand all Loading... | |
| 887 | 955 |
| 888 message_loop_runner->Run(); | 956 message_loop_runner->Run(); |
| 889 | 957 |
| 890 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 958 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 891 EXPECT_EQ("permission status - prompt", script_result); | 959 EXPECT_EQ("permission status - prompt", script_result); |
| 892 | 960 |
| 893 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 961 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 894 EXPECT_EQ("false - not subscribed", script_result); | 962 EXPECT_EQ("false - not subscribed", script_result); |
| 895 } | 963 } |
| 896 | 964 |
| 897 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 965 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 898 DenyNotificationsPermissionUnsubscribes) { | 966 DenyNotificationsPermissionUnsubscribes) { |
| 899 std::string script_result; | 967 std::string script_result; |
| 900 | 968 |
| 901 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 969 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 902 | 970 |
| 903 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 971 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 904 EXPECT_EQ("true - subscribed", script_result); | 972 EXPECT_EQ("true - subscribed", script_result); |
| 905 | 973 |
| 906 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 974 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 907 EXPECT_EQ("permission status - granted", script_result); | 975 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 13 matching lines...) Expand all Loading... | |
| 921 | 989 |
| 922 message_loop_runner->Run(); | 990 message_loop_runner->Run(); |
| 923 | 991 |
| 924 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 992 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 925 EXPECT_EQ("permission status - denied", script_result); | 993 EXPECT_EQ("permission status - denied", script_result); |
| 926 | 994 |
| 927 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 995 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 928 EXPECT_EQ("false - not subscribed", script_result); | 996 EXPECT_EQ("false - not subscribed", script_result); |
| 929 } | 997 } |
| 930 | 998 |
| 931 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 999 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 932 GrantAlreadyGrantedPermissionDoesNotUnsubscribe) { | 1000 GrantAlreadyGrantedPermissionDoesNotUnsubscribe) { |
| 933 std::string script_result; | 1001 std::string script_result; |
| 934 | 1002 |
| 935 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 1003 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 936 | 1004 |
| 937 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 1005 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 938 EXPECT_EQ("true - subscribed", script_result); | 1006 EXPECT_EQ("true - subscribed", script_result); |
| 939 | 1007 |
| 940 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 1008 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 941 EXPECT_EQ("permission status - granted", script_result); | 1009 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 23 matching lines...) Expand all Loading... | |
| 965 EXPECT_EQ("permission status - granted", script_result); | 1033 EXPECT_EQ("permission status - granted", script_result); |
| 966 | 1034 |
| 967 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 1035 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 968 EXPECT_EQ("true - subscribed", script_result); | 1036 EXPECT_EQ("true - subscribed", script_result); |
| 969 } | 1037 } |
| 970 | 1038 |
| 971 // This test is testing some non-trivial content settings rules and make sure | 1039 // This test is testing some non-trivial content settings rules and make sure |
| 972 // that they are respected with regards to automatic unsubscription. In other | 1040 // that they are respected with regards to automatic unsubscription. In other |
| 973 // words, it checks that the push service does not end up unsubscribing origins | 1041 // words, it checks that the push service does not end up unsubscribing origins |
| 974 // that have push permission with some non-common rules. | 1042 // that have push permission with some non-common rules. |
| 975 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 1043 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 976 AutomaticUnsubscriptionFollowsContentSettingRules) { | 1044 AutomaticUnsubscriptionFollowsContentSettingRules) { |
| 977 std::string script_result; | 1045 std::string script_result; |
| 978 | 1046 |
| 979 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 1047 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 980 | 1048 |
| 981 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 1049 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 982 EXPECT_EQ("true - subscribed", script_result); | 1050 EXPECT_EQ("true - subscribed", script_result); |
| 983 | 1051 |
| 984 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 1052 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 985 EXPECT_EQ("permission status - granted", script_result); | 1053 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1024 | 1092 |
| 1025 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 1093 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 1026 EXPECT_EQ("permission status - granted", script_result); | 1094 EXPECT_EQ("permission status - granted", script_result); |
| 1027 | 1095 |
| 1028 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 1096 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 1029 EXPECT_EQ("true - subscribed", script_result); | 1097 EXPECT_EQ("true - subscribed", script_result); |
| 1030 } | 1098 } |
| 1031 | 1099 |
| 1032 // Checks that automatically unsubscribing due to a revoked permission is | 1100 // Checks that automatically unsubscribing due to a revoked permission is |
| 1033 // handled well if the sender ID needed to unsubscribe was already deleted. | 1101 // handled well if the sender ID needed to unsubscribe was already deleted. |
| 1034 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 1102 IN_PROC_BROWSER_TEST_P(PushMessagingBrowserTest, |
| 1035 ResetPushPermissionAfterClearingSiteData) { | 1103 ResetPushPermissionAfterClearingSiteData) { |
| 1036 std::string script_result; | 1104 std::string script_result; |
| 1037 | 1105 |
| 1038 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 1106 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 1039 | 1107 |
| 1040 PushMessagingAppIdentifier app_identifier = | 1108 PushMessagingAppIdentifier app_identifier = |
| 1041 GetAppIdentifierForServiceWorkerRegistration(0LL); | 1109 GetAppIdentifierForServiceWorkerRegistration(0LL); |
| 1042 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); | 1110 EXPECT_EQ(app_identifier.app_id(), gcm_service()->last_registered_app_id()); |
| 1043 PushMessagingAppIdentifier stored_app_identifier = | 1111 PushMessagingAppIdentifier stored_app_identifier = |
| 1044 PushMessagingAppIdentifier::FindByAppId(GetBrowser()->profile(), | 1112 PushMessagingAppIdentifier::FindByAppId(GetBrowser()->profile(), |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1097 std::string script_result; | 1165 std::string script_result; |
| 1098 | 1166 |
| 1099 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); | 1167 ASSERT_TRUE(RunScript("registerServiceWorker()", &script_result)); |
| 1100 ASSERT_EQ("ok - service worker registered", script_result); | 1168 ASSERT_EQ("ok - service worker registered", script_result); |
| 1101 | 1169 |
| 1102 // In Incognito mode the promise returned by getSubscription should not hang, | 1170 // In Incognito mode the promise returned by getSubscription should not hang, |
| 1103 // it should just fulfill with null. | 1171 // it should just fulfill with null. |
| 1104 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 1172 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 1105 ASSERT_EQ("false - not subscribed", script_result); | 1173 ASSERT_EQ("false - not subscribed", script_result); |
| 1106 } | 1174 } |
| 1175 | |
| 1176 INSTANTIATE_TEST_CASE_P(PushMessagingBrowserTestWithParams, | |
|
johnme
2015/06/02 14:12:38
Does this mean all the tests will run twice, even
| |
| 1177 PushMessagingBrowserTest, | |
| 1178 testing::Values(false, true)); | |
| 1179 INSTANTIATE_TEST_CASE_P(PushMessagingBadManifestBrowserTestWithParams, | |
| 1180 PushMessagingBadManifestBrowserTest, | |
| 1181 testing::Values(false, true)); | |
| 1182 INSTANTIATE_TEST_CASE_P(PushMessagingManifestUserVisibleOnlyTrueTestWithParams, | |
| 1183 PushMessagingManifestUserVisibleOnlyTrueTest, | |
| 1184 testing::Values(false, true)); | |
| 1185 INSTANTIATE_TEST_CASE_P(PushMessagingBrowserTestEmptySubscriptionOptsWithParams, | |
| 1186 PushMessagingBrowserTestEmptySubscriptionOptions, | |
| 1187 testing::Values(false, true)); | |
| OLD | NEW |