Chromium Code Reviews| Index: chrome/browser/services/gcm/push_messaging_permission_context_unittest.cc |
| diff --git a/chrome/browser/services/gcm/push_messaging_permission_context_unittest.cc b/chrome/browser/services/gcm/push_messaging_permission_context_unittest.cc |
| index 653d1d4f2a6185c50c4d1842ca717e6861df4965..4bbb0e967880b5f2f754eadf9144faade2ac872d 100644 |
| --- a/chrome/browser/services/gcm/push_messaging_permission_context_unittest.cc |
| +++ b/chrome/browser/services/gcm/push_messaging_permission_context_unittest.cc |
| @@ -27,18 +27,6 @@ class TestPushMessagingPermissionContext |
| bool was_persisted() const { return was_persisted_; } |
| bool was_granted() const { return permission_granted_; } |
| - // PushMessagingPermissionContext: |
| - void DecidePermission(content::WebContents* web_contents, |
| - const PermissionRequestID& id, |
| - const GURL& requesting_origin, |
| - const GURL& embedder_origin, |
| - bool user_gesture, |
| - const BrowserPermissionCallback& callback) override { |
| - PushMessagingPermissionContext::DecidePermission( |
| - web_contents, id, requesting_origin, embedder_origin, user_gesture, |
| - callback); |
| - } |
| - |
| private: |
| // PushMessagingPermissionContext: |
| void NotifyPermissionSet(const PermissionRequestID& id, |
| @@ -57,45 +45,40 @@ class TestPushMessagingPermissionContext |
| class PushMessagingPermissionContextTest : public testing::Test { |
| public: |
| - PushMessagingPermissionContextTest() {} |
| - |
| - void SetUp() override { |
| - HostContentSettingsMap* host_content_settings_map = |
| - profile_.GetHostContentSettingsMap(); |
| - host_content_settings_map->SetDefaultContentSetting( |
| - CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ASK); |
| - host_content_settings_map->SetDefaultContentSetting( |
| - CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, CONTENT_SETTING_ASK); |
| - } |
| + PushMessagingPermissionContextTest(){}; |
|
Bernhard Bauer
2014/12/09 12:02:07
Space before the braces, and no semicolon afterwar
Miguel Garcia
2014/12/09 14:24:32
Done.
|
| protected: |
| - void SetContentSetting(ContentSettingsType setting, ContentSetting value) { |
| + void SetContentSetting(Profile* profile, |
| + ContentSettingsType setting, |
| + ContentSetting value) { |
| ContentSettingsPattern pattern = |
| ContentSettingsPattern::FromString(kOriginA); |
| HostContentSettingsMap* host_content_settings_map = |
| - profile_.GetHostContentSettingsMap(); |
| + profile->GetHostContentSettingsMap(); |
| host_content_settings_map->SetContentSetting(pattern, pattern, setting, |
| std::string(), value); |
| } |
| - TestingProfile profile_; |
| content::TestBrowserThreadBundle thread_bundle_; |
| }; |
| TEST_F(PushMessagingPermissionContextTest, HasPermissionPrompt) { |
| - PushMessagingPermissionContext context(&profile_); |
| + TestingProfile profile; |
| + PushMessagingPermissionContext context(&profile); |
| EXPECT_EQ(CONTENT_SETTING_ASK, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| // Just granting notifications should still prompt |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ALLOW); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_ALLOW); |
| EXPECT_EQ(CONTENT_SETTING_ASK, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| // Just granting push should still prompt |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ASK); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_ASK); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| CONTENT_SETTING_ALLOW); |
| EXPECT_EQ(CONTENT_SETTING_ASK, |
| @@ -103,75 +86,81 @@ TEST_F(PushMessagingPermissionContextTest, HasPermissionPrompt) { |
| } |
| TEST_F(PushMessagingPermissionContextTest, HasPermissionDenySettingsMismatch) { |
| - PushMessagingPermissionContext context(&profile_); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_BLOCK); |
| + TestingProfile profile; |
| + PushMessagingPermissionContext context(&profile); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_BLOCK); |
| EXPECT_EQ(CONTENT_SETTING_BLOCK, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ASK); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_ASK); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| CONTENT_SETTING_BLOCK); |
| EXPECT_EQ(CONTENT_SETTING_BLOCK, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ALLOW); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_ALLOW); |
| EXPECT_EQ(CONTENT_SETTING_BLOCK, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ASK); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_ASK); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| CONTENT_SETTING_BLOCK); |
| EXPECT_EQ(CONTENT_SETTING_BLOCK, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| } |
| TEST_F(PushMessagingPermissionContextTest, HasPermissionDenyDifferentOrigins) { |
| - PushMessagingPermissionContext context(&profile_); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ALLOW); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, CONTENT_SETTING_ASK); |
| - |
| + TestingProfile profile; |
| + PushMessagingPermissionContext context(&profile); |
| EXPECT_EQ(CONTENT_SETTING_BLOCK, |
| context.GetPermissionStatus(GURL(kOriginB), GURL(kOriginA))); |
| } |
| TEST_F(PushMessagingPermissionContextTest, HasPermissionAccept) { |
| - PushMessagingPermissionContext context(&profile_); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ALLOW); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + TestingProfile profile; |
| + PushMessagingPermissionContext context(&profile); |
| + |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| + CONTENT_SETTING_ALLOW); |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| CONTENT_SETTING_ALLOW); |
| EXPECT_EQ(CONTENT_SETTING_ALLOW, |
| context.GetPermissionStatus(GURL(kOriginA), GURL(kOriginA))); |
| } |
| -TEST_F(PushMessagingPermissionContextTest, DecidePermission) { |
| - TestPushMessagingPermissionContext context(&profile_); |
| +TEST_F(PushMessagingPermissionContextTest, DecidePushPermission) { |
| + TestingProfile profile; |
| + TestPushMessagingPermissionContext context(&profile); |
| PermissionRequestID request_id(-1, -1, -1, GURL(kOriginA)); |
| BrowserPermissionCallback callback; |
| - context.DecidePermission(NULL, request_id, GURL(kOriginA), GURL(kOriginA), |
| - true, callback); |
| + context.DecidePushPermission(request_id, GURL(kOriginA), GURL(kOriginA), |
| + callback, false); |
| EXPECT_FALSE(context.was_persisted()); |
| EXPECT_FALSE(context.was_granted()); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_BLOCK); |
| - context.DecidePermission(NULL, request_id, GURL(kOriginA), GURL(kOriginA), |
| - true, callback); |
| - EXPECT_FALSE(context.was_persisted()); |
| - EXPECT_FALSE(context.was_granted()); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, CONTENT_SETTING_ALLOW); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + CONTENT_SETTING_ALLOW); |
| + context.DecidePushPermission(request_id, GURL(kOriginA), GURL(kOriginA), |
| + callback, true); |
| + EXPECT_TRUE(context.was_persisted()); |
| + EXPECT_TRUE(context.was_granted()); |
| + |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| CONTENT_SETTING_BLOCK); |
| - context.DecidePermission(NULL, request_id, GURL(kOriginA), GURL(kOriginA), |
| - true, callback); |
| - EXPECT_FALSE(context.was_persisted()); |
| + context.DecidePushPermission(request_id, GURL(kOriginA), GURL(kOriginA), |
| + callback, true); |
| + EXPECT_TRUE(context.was_persisted()); |
| EXPECT_FALSE(context.was_granted()); |
| - SetContentSetting(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, CONTENT_SETTING_ASK); |
| - context.DecidePermission(NULL, request_id, GURL(kOriginA), GURL(kOriginA), |
| - true, callback); |
| + |
| + SetContentSetting(&profile, CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| + CONTENT_SETTING_ASK); |
| + context.DecidePushPermission(request_id, GURL(kOriginA), GURL(kOriginA), |
| + callback, true); |
| EXPECT_TRUE(context.was_persisted()); |
| EXPECT_TRUE(context.was_granted()); |
| - context.DecidePermission(NULL, request_id, GURL(kOriginB), GURL(kOriginA), |
| - true, callback); |
| - EXPECT_FALSE(context.was_persisted()); |
| - EXPECT_FALSE(context.was_granted()); |
| } |
| } // namespace gcm |