OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/strings/string16.h" | 5 #include "base/strings/string16.h" |
6 #include "base/strings/utf_string_conversions.h" | 6 #include "base/strings/utf_string_conversions.h" |
7 #include "chrome/browser/content_settings/tab_specific_content_settings.h" | 7 #include "chrome/browser/content_settings/tab_specific_content_settings.h" |
8 #include "chrome/test/base/chrome_render_view_host_test_harness.h" | 8 #include "chrome/test/base/chrome_render_view_host_test_harness.h" |
9 #include "chrome/test/base/testing_profile.h" | 9 #include "chrome/test/base/testing_profile.h" |
10 #include "content/public/test/test_browser_thread.h" | 10 #include "content/public/test/test_browser_thread.h" |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 TabSpecificContentSettings* content_settings = | 48 TabSpecificContentSettings* content_settings = |
49 TabSpecificContentSettings::FromWebContents(web_contents()); | 49 TabSpecificContentSettings::FromWebContents(web_contents()); |
50 net::CookieOptions options; | 50 net::CookieOptions options; |
51 | 51 |
52 // Check that after initializing, nothing is blocked. | 52 // Check that after initializing, nothing is blocked. |
53 EXPECT_FALSE( | 53 EXPECT_FALSE( |
54 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); | 54 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); |
55 EXPECT_FALSE( | 55 EXPECT_FALSE( |
56 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); | 56 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); |
57 EXPECT_FALSE( | 57 EXPECT_FALSE( |
| 58 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_MEDIA)); |
| 59 EXPECT_FALSE( |
58 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); | 60 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); |
59 EXPECT_FALSE( | 61 EXPECT_FALSE( |
60 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); | 62 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); |
61 EXPECT_FALSE( | 63 EXPECT_FALSE( |
62 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); | 64 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); |
63 EXPECT_FALSE(content_settings->IsContentBlocked( | 65 EXPECT_FALSE(content_settings->IsContentBlocked( |
64 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); | 66 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); |
65 EXPECT_FALSE(content_settings->IsContentBlocked( | 67 EXPECT_FALSE(content_settings->IsContentBlocked( |
66 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); | 68 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); |
67 | 69 |
68 // Set a cookie, block access to images, block mediastream access and block a | 70 // Set a cookie, block access to images, block mediastream access and block a |
69 // popup. | 71 // popup. |
70 content_settings->OnCookieChanged(GURL("http://google.com"), | 72 content_settings->OnCookieChanged(GURL("http://google.com"), |
71 GURL("http://google.com"), | 73 GURL("http://google.com"), |
72 "A=B", | 74 "A=B", |
73 options, | 75 options, |
74 false); | 76 false); |
75 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES); | 77 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES); |
76 content_settings->SetPopupsBlocked(true); | 78 content_settings->SetPopupsBlocked(true); |
77 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC); | 79 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC); |
78 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA); | 80 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA); |
79 | 81 |
80 // Check that only the respective content types are affected. | 82 // Check that only the respective content types are affected. |
81 EXPECT_TRUE(content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); | 83 EXPECT_TRUE(content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); |
82 EXPECT_FALSE( | 84 EXPECT_FALSE( |
83 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); | 85 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); |
84 EXPECT_FALSE( | 86 EXPECT_FALSE( |
| 87 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_MEDIA)); |
| 88 EXPECT_FALSE( |
85 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); | 89 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); |
86 EXPECT_FALSE( | 90 EXPECT_FALSE( |
87 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); | 91 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); |
88 EXPECT_TRUE(content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); | 92 EXPECT_TRUE(content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); |
89 EXPECT_TRUE(content_settings->IsContentBlocked( | 93 EXPECT_TRUE(content_settings->IsContentBlocked( |
90 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); | 94 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); |
91 EXPECT_TRUE(content_settings->IsContentBlocked( | 95 EXPECT_TRUE(content_settings->IsContentBlocked( |
92 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); | 96 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); |
93 content_settings->OnCookieChanged(GURL("http://google.com"), | 97 content_settings->OnCookieChanged(GURL("http://google.com"), |
94 GURL("http://google.com"), | 98 GURL("http://google.com"), |
95 "A=B", | 99 "A=B", |
96 options, | 100 options, |
97 false); | 101 false); |
98 | 102 |
99 // Block a cookie. | 103 // Block a cookie. |
100 content_settings->OnCookieChanged(GURL("http://google.com"), | 104 content_settings->OnCookieChanged(GURL("http://google.com"), |
101 GURL("http://google.com"), | 105 GURL("http://google.com"), |
102 "C=D", | 106 "C=D", |
103 options, | 107 options, |
104 true); | 108 true); |
105 EXPECT_TRUE( | 109 EXPECT_TRUE( |
106 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); | 110 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); |
107 | 111 |
| 112 // Block media. |
| 113 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_MEDIA); |
| 114 EXPECT_TRUE(content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_MEDIA)); |
| 115 |
108 // Reset blocked content settings. | 116 // Reset blocked content settings. |
109 content_settings->ClearBlockedContentSettingsExceptForCookies(); | 117 content_settings->ClearBlockedContentSettingsExceptForCookies(); |
110 EXPECT_FALSE( | 118 EXPECT_FALSE( |
111 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); | 119 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); |
112 EXPECT_FALSE( | 120 EXPECT_FALSE( |
113 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); | 121 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); |
114 EXPECT_FALSE( | 122 EXPECT_FALSE( |
| 123 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_MEDIA)); |
| 124 EXPECT_FALSE( |
115 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); | 125 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); |
116 EXPECT_TRUE( | 126 EXPECT_TRUE( |
117 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); | 127 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); |
118 EXPECT_FALSE( | 128 EXPECT_FALSE( |
119 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); | 129 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); |
120 EXPECT_FALSE(content_settings->IsContentBlocked( | 130 EXPECT_FALSE(content_settings->IsContentBlocked( |
121 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); | 131 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); |
122 EXPECT_FALSE(content_settings->IsContentBlocked( | 132 EXPECT_FALSE(content_settings->IsContentBlocked( |
123 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); | 133 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); |
124 | 134 |
125 content_settings->ClearCookieSpecificContentSettings(); | 135 content_settings->ClearCookieSpecificContentSettings(); |
126 EXPECT_FALSE( | 136 EXPECT_FALSE( |
127 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); | 137 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES)); |
128 EXPECT_FALSE( | 138 EXPECT_FALSE( |
129 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); | 139 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_JAVASCRIPT)); |
130 EXPECT_FALSE( | 140 EXPECT_FALSE( |
| 141 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_MEDIA)); |
| 142 EXPECT_FALSE( |
131 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); | 143 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_PLUGINS)); |
132 EXPECT_FALSE( | 144 EXPECT_FALSE( |
133 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); | 145 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); |
134 EXPECT_FALSE( | 146 EXPECT_FALSE( |
135 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); | 147 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_POPUPS)); |
136 EXPECT_FALSE(content_settings->IsContentBlocked( | 148 EXPECT_FALSE(content_settings->IsContentBlocked( |
137 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); | 149 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); |
138 EXPECT_FALSE(content_settings->IsContentBlocked( | 150 EXPECT_FALSE(content_settings->IsContentBlocked( |
139 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); | 151 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); |
140 } | 152 } |
(...skipping 15 matching lines...) Expand all Loading... |
156 | 168 |
157 TEST_F(TabSpecificContentSettingsTest, AllowedContent) { | 169 TEST_F(TabSpecificContentSettingsTest, AllowedContent) { |
158 TabSpecificContentSettings* content_settings = | 170 TabSpecificContentSettings* content_settings = |
159 TabSpecificContentSettings::FromWebContents(web_contents()); | 171 TabSpecificContentSettings::FromWebContents(web_contents()); |
160 net::CookieOptions options; | 172 net::CookieOptions options; |
161 | 173 |
162 // Test default settings. | 174 // Test default settings. |
163 ASSERT_FALSE( | 175 ASSERT_FALSE( |
164 content_settings->IsContentAllowed(CONTENT_SETTINGS_TYPE_IMAGES)); | 176 content_settings->IsContentAllowed(CONTENT_SETTINGS_TYPE_IMAGES)); |
165 ASSERT_FALSE( | 177 ASSERT_FALSE( |
| 178 content_settings->IsContentAllowed(CONTENT_SETTINGS_TYPE_MEDIA)); |
| 179 ASSERT_FALSE( |
166 content_settings->IsContentAllowed(CONTENT_SETTINGS_TYPE_COOKIES)); | 180 content_settings->IsContentAllowed(CONTENT_SETTINGS_TYPE_COOKIES)); |
167 ASSERT_FALSE( | 181 ASSERT_FALSE( |
168 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); | 182 content_settings->IsContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES)); |
169 ASSERT_FALSE(content_settings->IsContentAllowed( | 183 ASSERT_FALSE(content_settings->IsContentAllowed( |
170 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); | 184 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC)); |
171 ASSERT_FALSE(content_settings->IsContentAllowed( | 185 ASSERT_FALSE(content_settings->IsContentAllowed( |
172 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); | 186 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA)); |
173 | 187 |
174 // Record a cookie. | 188 // Record a cookie. |
175 content_settings->OnCookieChanged(GURL("http://google.com"), | 189 content_settings->OnCookieChanged(GURL("http://google.com"), |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 base::UTF8ToUTF16("text"), | 387 base::UTF8ToUTF16("text"), |
374 blocked_by_policy); | 388 blocked_by_policy); |
375 content_settings->OnLocalStorageAccessed(GURL("http://google.com"), | 389 content_settings->OnLocalStorageAccessed(GURL("http://google.com"), |
376 true, | 390 true, |
377 blocked_by_policy); | 391 blocked_by_policy); |
378 content_settings->OnWebDatabaseAccessed(GURL("http://google.com"), | 392 content_settings->OnWebDatabaseAccessed(GURL("http://google.com"), |
379 base::UTF8ToUTF16("name"), | 393 base::UTF8ToUTF16("name"), |
380 base::UTF8ToUTF16("display_name"), | 394 base::UTF8ToUTF16("display_name"), |
381 blocked_by_policy); | 395 blocked_by_policy); |
382 } | 396 } |
OLD | NEW |