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

Side by Side Diff: chrome/renderer/content_settings_observer_browsertest.cc

Issue 2812113004: Write last_modified date to Content Settings in the PrefProvider (Closed)
Patch Set: fix comments Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include "chrome/common/render_messages.h" 7 #include "chrome/common/render_messages.h"
8 #include "chrome/renderer/content_settings_observer.h" 8 #include "chrome/renderer/content_settings_observer.h"
9 #include "chrome/test/base/chrome_render_view_test.h" 9 #include "chrome/test/base/chrome_render_view_test.h"
10 #include "components/content_settings/core/common/content_settings.h" 10 #include "components/content_settings/core/common/content_settings.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 "<body>" 96 "<body>"
97 "</body>" 97 "</body>"
98 "</html>"; 98 "</html>";
99 render_thread_->sink().ClearMessages(); 99 render_thread_->sink().ClearMessages();
100 LoadHTML(kHtml); 100 LoadHTML(kHtml);
101 101
102 // 2. Block JavaScript. 102 // 2. Block JavaScript.
103 RendererContentSettingRules content_setting_rules; 103 RendererContentSettingRules content_setting_rules;
104 ContentSettingsForOneType& script_setting_rules = 104 ContentSettingsForOneType& script_setting_rules =
105 content_setting_rules.script_rules; 105 content_setting_rules.script_rules;
106 script_setting_rules.push_back( 106 script_setting_rules.push_back(ContentSettingPatternSource(
107 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 107 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
108 ContentSettingsPattern::Wildcard(), 108 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
109 CONTENT_SETTING_BLOCK,
110 std::string(),
111 false));
112 ContentSettingsObserver* observer = ContentSettingsObserver::Get( 109 ContentSettingsObserver* observer = ContentSettingsObserver::Get(
113 view_->GetMainRenderFrame()); 110 view_->GetMainRenderFrame());
114 observer->SetContentSettingRules(&content_setting_rules); 111 observer->SetContentSettingRules(&content_setting_rules);
115 112
116 // Make sure no pending messages are in the queue. 113 // Make sure no pending messages are in the queue.
117 ProcessPendingMessages(); 114 ProcessPendingMessages();
118 render_thread_->sink().ClearMessages(); 115 render_thread_->sink().ClearMessages();
119 116
120 // 3. Reload page. 117 // 3. Reload page.
121 std::string url_str = "data:text/html;charset=utf-8,"; 118 std::string url_str = "data:text/html;charset=utf-8,";
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 TEST_F(ChromeRenderViewTest, ImagesBlockedByDefault) { 172 TEST_F(ChromeRenderViewTest, ImagesBlockedByDefault) {
176 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame()); 173 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame());
177 174
178 // Load some HTML. 175 // Load some HTML.
179 LoadHTML("<html>Foo</html>"); 176 LoadHTML("<html>Foo</html>");
180 177
181 // Set the default image blocking setting. 178 // Set the default image blocking setting.
182 RendererContentSettingRules content_setting_rules; 179 RendererContentSettingRules content_setting_rules;
183 ContentSettingsForOneType& image_setting_rules = 180 ContentSettingsForOneType& image_setting_rules =
184 content_setting_rules.image_rules; 181 content_setting_rules.image_rules;
185 image_setting_rules.push_back( 182 image_setting_rules.push_back(ContentSettingPatternSource(
186 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 183 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
187 ContentSettingsPattern::Wildcard(), 184 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
188 CONTENT_SETTING_BLOCK,
189 std::string(),
190 false));
191 185
192 ContentSettingsObserver* observer = ContentSettingsObserver::Get( 186 ContentSettingsObserver* observer = ContentSettingsObserver::Get(
193 view_->GetMainRenderFrame()); 187 view_->GetMainRenderFrame());
194 observer->SetContentSettingRules(&content_setting_rules); 188 observer->SetContentSettingRules(&content_setting_rules);
195 EXPECT_CALL(mock_observer, 189 EXPECT_CALL(mock_observer,
196 OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES, base::string16())); 190 OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES, base::string16()));
197 EXPECT_FALSE(observer->AllowImage(true, mock_observer.image_url_)); 191 EXPECT_FALSE(observer->AllowImage(true, mock_observer.image_url_));
198 ::testing::Mock::VerifyAndClearExpectations(&observer); 192 ::testing::Mock::VerifyAndClearExpectations(&observer);
199 193
200 // Create an exception which allows the image. 194 // Create an exception which allows the image.
201 image_setting_rules.insert( 195 image_setting_rules.insert(
202 image_setting_rules.begin(), 196 image_setting_rules.begin(),
203 ContentSettingPatternSource( 197 ContentSettingPatternSource(
204 ContentSettingsPattern::Wildcard(), 198 ContentSettingsPattern::Wildcard(),
205 ContentSettingsPattern::FromString(mock_observer.image_origin_), 199 ContentSettingsPattern::FromString(mock_observer.image_origin_),
206 CONTENT_SETTING_ALLOW, 200 CONTENT_SETTING_ALLOW, base::Time(), std::string(), false));
207 std::string(),
208 false));
209 201
210 EXPECT_CALL(mock_observer, OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES, 202 EXPECT_CALL(mock_observer, OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES,
211 base::string16())).Times(0); 203 base::string16())).Times(0);
212 EXPECT_TRUE(observer->AllowImage(true, mock_observer.image_url_)); 204 EXPECT_TRUE(observer->AllowImage(true, mock_observer.image_url_));
213 ::testing::Mock::VerifyAndClearExpectations(&observer); 205 ::testing::Mock::VerifyAndClearExpectations(&observer);
214 } 206 }
215 207
216 TEST_F(ChromeRenderViewTest, ImagesAllowedByDefault) { 208 TEST_F(ChromeRenderViewTest, ImagesAllowedByDefault) {
217 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame()); 209 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame());
218 210
219 // Load some HTML. 211 // Load some HTML.
220 LoadHTML("<html>Foo</html>"); 212 LoadHTML("<html>Foo</html>");
221 213
222 // Set the default image blocking setting. 214 // Set the default image blocking setting.
223 RendererContentSettingRules content_setting_rules; 215 RendererContentSettingRules content_setting_rules;
224 ContentSettingsForOneType& image_setting_rules = 216 ContentSettingsForOneType& image_setting_rules =
225 content_setting_rules.image_rules; 217 content_setting_rules.image_rules;
226 image_setting_rules.push_back( 218 image_setting_rules.push_back(ContentSettingPatternSource(
227 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 219 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
228 ContentSettingsPattern::Wildcard(), 220 CONTENT_SETTING_ALLOW, base::Time(), std::string(), false));
229 CONTENT_SETTING_ALLOW,
230 std::string(),
231 false));
232 221
233 ContentSettingsObserver* observer = 222 ContentSettingsObserver* observer =
234 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 223 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
235 observer->SetContentSettingRules(&content_setting_rules); 224 observer->SetContentSettingRules(&content_setting_rules);
236 EXPECT_CALL(mock_observer, OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES, 225 EXPECT_CALL(mock_observer, OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES,
237 base::string16())).Times(0); 226 base::string16())).Times(0);
238 EXPECT_TRUE(observer->AllowImage(true, mock_observer.image_url_)); 227 EXPECT_TRUE(observer->AllowImage(true, mock_observer.image_url_));
239 ::testing::Mock::VerifyAndClearExpectations(&observer); 228 ::testing::Mock::VerifyAndClearExpectations(&observer);
240 229
241 // Create an exception which blocks the image. 230 // Create an exception which blocks the image.
242 image_setting_rules.insert( 231 image_setting_rules.insert(
243 image_setting_rules.begin(), 232 image_setting_rules.begin(),
244 ContentSettingPatternSource( 233 ContentSettingPatternSource(
245 ContentSettingsPattern::Wildcard(), 234 ContentSettingsPattern::Wildcard(),
246 ContentSettingsPattern::FromString(mock_observer.image_origin_), 235 ContentSettingsPattern::FromString(mock_observer.image_origin_),
247 CONTENT_SETTING_BLOCK, 236 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
248 std::string(),
249 false));
250 EXPECT_CALL(mock_observer, 237 EXPECT_CALL(mock_observer,
251 OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES, base::string16())); 238 OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES, base::string16()));
252 EXPECT_FALSE(observer->AllowImage(true, mock_observer.image_url_)); 239 EXPECT_FALSE(observer->AllowImage(true, mock_observer.image_url_));
253 ::testing::Mock::VerifyAndClearExpectations(&observer); 240 ::testing::Mock::VerifyAndClearExpectations(&observer);
254 } 241 }
255 242
256 TEST_F(ChromeRenderViewTest, ContentSettingsBlockScripts) { 243 TEST_F(ChromeRenderViewTest, ContentSettingsBlockScripts) {
257 // Set the content settings for scripts. 244 // Set the content settings for scripts.
258 RendererContentSettingRules content_setting_rules; 245 RendererContentSettingRules content_setting_rules;
259 ContentSettingsForOneType& script_setting_rules = 246 ContentSettingsForOneType& script_setting_rules =
260 content_setting_rules.script_rules; 247 content_setting_rules.script_rules;
261 script_setting_rules.push_back( 248 script_setting_rules.push_back(ContentSettingPatternSource(
262 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 249 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
263 ContentSettingsPattern::Wildcard(), 250 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
264 CONTENT_SETTING_BLOCK,
265 std::string(),
266 false));
267 251
268 ContentSettingsObserver* observer = 252 ContentSettingsObserver* observer =
269 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 253 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
270 observer->SetContentSettingRules(&content_setting_rules); 254 observer->SetContentSettingRules(&content_setting_rules);
271 255
272 // Load a page which contains a script. 256 // Load a page which contains a script.
273 const char kHtml[] = 257 const char kHtml[] =
274 "<html>" 258 "<html>"
275 "<head>" 259 "<head>"
276 "<script src='data:foo'></script>" 260 "<script src='data:foo'></script>"
(...skipping 11 matching lines...) Expand all
288 was_blocked = true; 272 was_blocked = true;
289 } 273 }
290 EXPECT_TRUE(was_blocked); 274 EXPECT_TRUE(was_blocked);
291 } 275 }
292 276
293 TEST_F(ChromeRenderViewTest, ContentSettingsAllowScripts) { 277 TEST_F(ChromeRenderViewTest, ContentSettingsAllowScripts) {
294 // Set the content settings for scripts. 278 // Set the content settings for scripts.
295 RendererContentSettingRules content_setting_rules; 279 RendererContentSettingRules content_setting_rules;
296 ContentSettingsForOneType& script_setting_rules = 280 ContentSettingsForOneType& script_setting_rules =
297 content_setting_rules.script_rules; 281 content_setting_rules.script_rules;
298 script_setting_rules.push_back( 282 script_setting_rules.push_back(ContentSettingPatternSource(
299 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 283 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
300 ContentSettingsPattern::Wildcard(), 284 CONTENT_SETTING_ALLOW, base::Time(), std::string(), false));
301 CONTENT_SETTING_ALLOW,
302 std::string(),
303 false));
304 285
305 ContentSettingsObserver* observer = 286 ContentSettingsObserver* observer =
306 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 287 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
307 observer->SetContentSettingRules(&content_setting_rules); 288 observer->SetContentSettingRules(&content_setting_rules);
308 289
309 // Load a page which contains a script. 290 // Load a page which contains a script.
310 const char kHtml[] = 291 const char kHtml[] =
311 "<html>" 292 "<html>"
312 "<head>" 293 "<head>"
313 "<script src='data:foo'></script>" 294 "<script src='data:foo'></script>"
(...skipping 16 matching lines...) Expand all
330 // Regression test for crbug.com/232410: Load a page with JS blocked. Then, 311 // Regression test for crbug.com/232410: Load a page with JS blocked. Then,
331 // allow JS and reload the page. In each case, only one of noscript or script 312 // allow JS and reload the page. In each case, only one of noscript or script
332 // tags should be enabled, but never both. 313 // tags should be enabled, but never both.
333 TEST_F(ChromeRenderViewTest, ContentSettingsNoscriptTag) { 314 TEST_F(ChromeRenderViewTest, ContentSettingsNoscriptTag) {
334 // 1. Block JavaScript. 315 // 1. Block JavaScript.
335 RendererContentSettingRules content_setting_rules; 316 RendererContentSettingRules content_setting_rules;
336 ContentSettingsForOneType& script_setting_rules = 317 ContentSettingsForOneType& script_setting_rules =
337 content_setting_rules.script_rules; 318 content_setting_rules.script_rules;
338 script_setting_rules.push_back(ContentSettingPatternSource( 319 script_setting_rules.push_back(ContentSettingPatternSource(
339 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(), 320 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
340 CONTENT_SETTING_BLOCK, std::string(), false)); 321 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
341 322
342 ContentSettingsObserver* observer = 323 ContentSettingsObserver* observer =
343 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 324 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
344 observer->SetContentSettingRules(&content_setting_rules); 325 observer->SetContentSettingRules(&content_setting_rules);
345 326
346 // 2. Load a page which contains a noscript tag and a script tag. Note that 327 // 2. Load a page which contains a noscript tag and a script tag. Note that
347 // the page doesn't have a body tag. 328 // the page doesn't have a body tag.
348 const char kHtml[] = 329 const char kHtml[] =
349 "<html>" 330 "<html>"
350 "<noscript>JS_DISABLED</noscript>" 331 "<noscript>JS_DISABLED</noscript>"
(...skipping 10 matching lines...) Expand all
361 std::string::npos, 342 std::string::npos,
362 blink::WebFrameContentDumper::DumpLayoutTreeAsText( 343 blink::WebFrameContentDumper::DumpLayoutTreeAsText(
363 GetMainFrame(), blink::WebFrameContentDumper::kLayoutAsTextNormal) 344 GetMainFrame(), blink::WebFrameContentDumper::kLayoutAsTextNormal)
364 .Utf8() 345 .Utf8()
365 .find("JS_ENABLED")); 346 .find("JS_ENABLED"));
366 347
367 // 3. Allow JavaScript. 348 // 3. Allow JavaScript.
368 script_setting_rules.clear(); 349 script_setting_rules.clear();
369 script_setting_rules.push_back(ContentSettingPatternSource( 350 script_setting_rules.push_back(ContentSettingPatternSource(
370 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(), 351 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
371 CONTENT_SETTING_ALLOW, std::string(), false)); 352 CONTENT_SETTING_ALLOW, base::Time(), std::string(), false));
372 observer->SetContentSettingRules(&content_setting_rules); 353 observer->SetContentSettingRules(&content_setting_rules);
373 354
374 // 4. Reload the page. 355 // 4. Reload the page.
375 std::string url_str = "data:text/html;charset=utf-8,"; 356 std::string url_str = "data:text/html;charset=utf-8,";
376 url_str.append(kHtml); 357 url_str.append(kHtml);
377 GURL url(url_str); 358 GURL url(url_str);
378 Reload(url); 359 Reload(url);
379 EXPECT_NE( 360 EXPECT_NE(
380 std::string::npos, 361 std::string::npos,
381 blink::WebFrameContentDumper::DumpLayoutTreeAsText( 362 blink::WebFrameContentDumper::DumpLayoutTreeAsText(
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 was_blocked = true; 394 was_blocked = true;
414 } 395 }
415 EXPECT_FALSE(was_blocked); 396 EXPECT_FALSE(was_blocked);
416 397
417 // Block JavaScript. 398 // Block JavaScript.
418 RendererContentSettingRules content_setting_rules; 399 RendererContentSettingRules content_setting_rules;
419 ContentSettingsForOneType& script_setting_rules = 400 ContentSettingsForOneType& script_setting_rules =
420 content_setting_rules.script_rules; 401 content_setting_rules.script_rules;
421 script_setting_rules.push_back(ContentSettingPatternSource( 402 script_setting_rules.push_back(ContentSettingPatternSource(
422 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(), 403 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
423 CONTENT_SETTING_BLOCK, std::string(), false)); 404 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
424 405
425 ContentSettingsObserver* observer = 406 ContentSettingsObserver* observer =
426 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 407 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
427 observer->SetContentSettingRules(&content_setting_rules); 408 observer->SetContentSettingRules(&content_setting_rules);
428 409
429 // The page shouldn't see the change to script blocking setting after a 410 // The page shouldn't see the change to script blocking setting after a
430 // same document navigation. 411 // same document navigation.
431 OnSameDocumentNavigation(GetMainFrame(), true, true); 412 OnSameDocumentNavigation(GetMainFrame(), true, true);
432 EXPECT_TRUE(observer->AllowScript(true)); 413 EXPECT_TRUE(observer->AllowScript(true));
433 } 414 }
434 415
435 TEST_F(ChromeRenderViewTest, ContentSettingsInterstitialPages) { 416 TEST_F(ChromeRenderViewTest, ContentSettingsInterstitialPages) {
436 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame()); 417 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame());
437 // Block scripts. 418 // Block scripts.
438 RendererContentSettingRules content_setting_rules; 419 RendererContentSettingRules content_setting_rules;
439 ContentSettingsForOneType& script_setting_rules = 420 ContentSettingsForOneType& script_setting_rules =
440 content_setting_rules.script_rules; 421 content_setting_rules.script_rules;
441 script_setting_rules.push_back( 422 script_setting_rules.push_back(ContentSettingPatternSource(
442 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 423 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
443 ContentSettingsPattern::Wildcard(), 424 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
444 CONTENT_SETTING_BLOCK,
445 std::string(),
446 false));
447 // Block images. 425 // Block images.
448 ContentSettingsForOneType& image_setting_rules = 426 ContentSettingsForOneType& image_setting_rules =
449 content_setting_rules.image_rules; 427 content_setting_rules.image_rules;
450 image_setting_rules.push_back( 428 image_setting_rules.push_back(ContentSettingPatternSource(
451 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 429 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
452 ContentSettingsPattern::Wildcard(), 430 CONTENT_SETTING_BLOCK, base::Time(), std::string(), false));
453 CONTENT_SETTING_BLOCK,
454 std::string(),
455 false));
456 431
457 ContentSettingsObserver* observer = 432 ContentSettingsObserver* observer =
458 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 433 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
459 observer->SetContentSettingRules(&content_setting_rules); 434 observer->SetContentSettingRules(&content_setting_rules);
460 observer->OnSetAsInterstitial(); 435 observer->OnSetAsInterstitial();
461 436
462 // Load a page which contains a script. 437 // Load a page which contains a script.
463 const char kHtml[] = 438 const char kHtml[] =
464 "<html>" 439 "<html>"
465 "<head>" 440 "<head>"
(...skipping 23 matching lines...) Expand all
489 TEST_F(ChromeRenderViewTest, AutoplayContentSettings) { 464 TEST_F(ChromeRenderViewTest, AutoplayContentSettings) {
490 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame()); 465 MockContentSettingsObserver mock_observer(view_->GetMainRenderFrame());
491 466
492 // Load some HTML. 467 // Load some HTML.
493 LoadHTML("<html>Foo</html>"); 468 LoadHTML("<html>Foo</html>");
494 469
495 // Set the default setting. 470 // Set the default setting.
496 RendererContentSettingRules content_setting_rules; 471 RendererContentSettingRules content_setting_rules;
497 ContentSettingsForOneType& autoplay_setting_rules = 472 ContentSettingsForOneType& autoplay_setting_rules =
498 content_setting_rules.autoplay_rules; 473 content_setting_rules.autoplay_rules;
499 autoplay_setting_rules.push_back( 474 autoplay_setting_rules.push_back(ContentSettingPatternSource(
500 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(), 475 ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
501 ContentSettingsPattern::Wildcard(), 476 CONTENT_SETTING_ALLOW, base::Time(), std::string(), false));
502 CONTENT_SETTING_ALLOW,
503 std::string(),
504 false));
505 477
506 ContentSettingsObserver* observer = 478 ContentSettingsObserver* observer =
507 ContentSettingsObserver::Get(view_->GetMainRenderFrame()); 479 ContentSettingsObserver::Get(view_->GetMainRenderFrame());
508 observer->SetContentSettingRules(&content_setting_rules); 480 observer->SetContentSettingRules(&content_setting_rules);
509 481
510 EXPECT_TRUE(observer->AllowAutoplay(false)); 482 EXPECT_TRUE(observer->AllowAutoplay(false));
511 ::testing::Mock::VerifyAndClearExpectations(&observer); 483 ::testing::Mock::VerifyAndClearExpectations(&observer);
512 484
513 // Add rule to block autoplay. 485 // Add rule to block autoplay.
514 autoplay_setting_rules.insert( 486 autoplay_setting_rules.insert(
515 autoplay_setting_rules.begin(), 487 autoplay_setting_rules.begin(),
516 ContentSettingPatternSource( 488 ContentSettingPatternSource(ContentSettingsPattern::Wildcard(),
517 ContentSettingsPattern::Wildcard(), 489 ContentSettingsPattern::Wildcard(),
518 ContentSettingsPattern::Wildcard(), 490 CONTENT_SETTING_BLOCK, base::Time(),
519 CONTENT_SETTING_BLOCK, 491 std::string(), false));
520 std::string(),
521 false));
522 492
523 EXPECT_FALSE(observer->AllowAutoplay(true)); 493 EXPECT_FALSE(observer->AllowAutoplay(true));
524 ::testing::Mock::VerifyAndClearExpectations(&observer); 494 ::testing::Mock::VerifyAndClearExpectations(&observer);
525 } 495 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698