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

Side by Side Diff: chrome/browser/content_settings/cookie_settings_unittest.cc

Issue 8479027: Make third-party cookie blocking strict by default (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: updates Created 9 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 | Annotate | Revision Log
« no previous file with comments | « chrome/browser/content_settings/cookie_settings.cc ('k') | chrome/common/chrome_switches.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "base/auto_reset.h" 5 #include "base/auto_reset.h"
6 #include "base/command_line.h" 6 #include "base/command_line.h"
7 #include "chrome/browser/content_settings/cookie_settings.h" 7 #include "chrome/browser/content_settings/cookie_settings.h"
8 #include "chrome/browser/prefs/pref_service.h" 8 #include "chrome/browser/prefs/pref_service.h"
9 #include "chrome/common/chrome_switches.h" 9 #include "chrome/common/chrome_switches.h"
10 #include "chrome/common/content_settings_pattern.h" 10 #include "chrome/common/content_settings_pattern.h"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 ContentSettingsPattern::Wildcard(), 47 ContentSettingsPattern::Wildcard(),
48 CONTENT_SETTING_BLOCK); 48 CONTENT_SETTING_BLOCK);
49 EXPECT_FALSE(cookie_settings->IsReadingCookieAllowed( 49 EXPECT_FALSE(cookie_settings->IsReadingCookieAllowed(
50 kBlockedSite, kBlockedSite)); 50 kBlockedSite, kBlockedSite));
51 } 51 }
52 52
53 TEST_F(CookieSettingsTest, CookiesBlockThirdParty) { 53 TEST_F(CookieSettingsTest, CookiesBlockThirdParty) {
54 TestingProfile profile; 54 TestingProfile profile;
55 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile); 55 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile);
56 profile.GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true); 56 profile.GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true);
57 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed( 57 EXPECT_FALSE(cookie_settings->IsReadingCookieAllowed(
58 kBlockedSite, kFirstPartySite)); 58 kBlockedSite, kFirstPartySite));
59 EXPECT_FALSE(cookie_settings->IsCookieSessionOnly(kBlockedSite)); 59 EXPECT_FALSE(cookie_settings->IsCookieSessionOnly(kBlockedSite));
60 EXPECT_FALSE(cookie_settings->IsSettingCookieAllowed( 60 EXPECT_FALSE(cookie_settings->IsSettingCookieAllowed(
61 kBlockedSite, kFirstPartySite)); 61 kBlockedSite, kFirstPartySite));
62 62
63 CommandLine* cmd = CommandLine::ForCurrentProcess(); 63 CommandLine* cmd = CommandLine::ForCurrentProcess();
64 AutoReset<CommandLine> auto_reset(cmd, *cmd); 64 AutoReset<CommandLine> auto_reset(cmd, *cmd);
65 cmd->AppendSwitch(switches::kBlockReadingThirdPartyCookies); 65 cmd->AppendSwitch(switches::kOnlyBlockSettingThirdPartyCookies);
66 66
67 EXPECT_FALSE(cookie_settings->IsReadingCookieAllowed( 67 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed(
68 kBlockedSite, kFirstPartySite)); 68 kBlockedSite, kFirstPartySite));
69 EXPECT_FALSE(cookie_settings->IsSettingCookieAllowed( 69 EXPECT_FALSE(cookie_settings->IsSettingCookieAllowed(
70 kBlockedSite, kFirstPartySite)); 70 kBlockedSite, kFirstPartySite));
71 } 71 }
72 72
73 TEST_F(CookieSettingsTest, CookiesAllowThirdParty) { 73 TEST_F(CookieSettingsTest, CookiesAllowThirdParty) {
74 TestingProfile profile; 74 TestingProfile profile;
75 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile); 75 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile);
76 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed( 76 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed(
77 kBlockedSite, kFirstPartySite)); 77 kBlockedSite, kFirstPartySite));
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed( 129 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed(
130 kAllowedSite, kFirstPartySite)); 130 kAllowedSite, kFirstPartySite));
131 EXPECT_FALSE(cookie_settings->IsCookieSessionOnly(kAllowedSite)); 131 EXPECT_FALSE(cookie_settings->IsCookieSessionOnly(kAllowedSite));
132 132
133 // Extensions should always be allowed to use cookies. 133 // Extensions should always be allowed to use cookies.
134 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed( 134 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed(
135 kAllowedSite, kExtensionURL)); 135 kAllowedSite, kExtensionURL));
136 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed( 136 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed(
137 kAllowedSite, kExtensionURL)); 137 kAllowedSite, kExtensionURL));
138 138
139 CommandLine* cmd = CommandLine::ForCurrentProcess();
140 AutoReset<CommandLine> auto_reset(cmd, *cmd);
141 cmd->AppendSwitch(switches::kBlockReadingThirdPartyCookies);
142
143 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed(
144 kAllowedSite, kFirstPartySite));
145 EXPECT_FALSE(cookie_settings->IsCookieSessionOnly(kAllowedSite));
146
147 // Extensions should always be allowed to use cookies. 139 // Extensions should always be allowed to use cookies.
148 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed( 140 EXPECT_TRUE(cookie_settings->IsReadingCookieAllowed(
149 kAllowedSite, kExtensionURL)); 141 kAllowedSite, kExtensionURL));
150 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed( 142 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed(
151 kAllowedSite, kExtensionURL)); 143 kAllowedSite, kExtensionURL));
152 } 144 }
153 145
154 TEST_F(CookieSettingsTest, CookiesBlockEverything) { 146 TEST_F(CookieSettingsTest, CookiesBlockEverything) {
155 TestingProfile profile; 147 TestingProfile profile;
156 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile); 148 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile);
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile); 253 CookieSettings* cookie_settings = CookieSettings::GetForProfile(&profile);
262 profile.GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true); 254 profile.GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true);
263 255
264 // XHRs stemming from extensions are exempt from third-party cookie blocking 256 // XHRs stemming from extensions are exempt from third-party cookie blocking
265 // rules (as the first party is always the extension's security origin). 257 // rules (as the first party is always the extension's security origin).
266 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed( 258 EXPECT_TRUE(cookie_settings->IsSettingCookieAllowed(
267 kBlockedSite, kExtensionURL)); 259 kBlockedSite, kExtensionURL));
268 } 260 }
269 261
270 } // namespace 262 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/content_settings/cookie_settings.cc ('k') | chrome/common/chrome_switches.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698