OLD | NEW |
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 "chrome/browser/browsing_data_remover.h" | 5 #include "chrome/browser/browsing_data_remover.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
383 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2)); | 383 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2)); |
384 } | 384 } |
385 | 385 |
386 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { | 386 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { |
387 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 387 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
388 new RemoveQuotaManagedDataTester()); | 388 new RemoveQuotaManagedDataTester()); |
389 | 389 |
390 tester->PopulateTestQuotaManagedData(GetMockManager()); | 390 tester->PopulateTestQuotaManagedData(GetMockManager()); |
391 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 391 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, |
392 BrowsingDataRemover::REMOVE_SITE_DATA & | 392 BrowsingDataRemover::REMOVE_SITE_DATA & |
393 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 393 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
394 | 394 |
395 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 395 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
396 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 396 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
397 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 397 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
398 quota::kStorageTypeTemporary)); | 398 quota::kStorageTypeTemporary)); |
399 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 399 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
400 quota::kStorageTypeTemporary)); | 400 quota::kStorageTypeTemporary)); |
401 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 401 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
402 quota::kStorageTypeTemporary)); | 402 quota::kStorageTypeTemporary)); |
403 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 403 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
404 quota::kStorageTypePersistent)); | 404 quota::kStorageTypePersistent)); |
405 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 405 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
406 quota::kStorageTypePersistent)); | 406 quota::kStorageTypePersistent)); |
407 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 407 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
408 quota::kStorageTypePersistent)); | 408 quota::kStorageTypePersistent)); |
409 } | 409 } |
410 | 410 |
411 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { | 411 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { |
412 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 412 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
413 new RemoveQuotaManagedDataTester()); | 413 new RemoveQuotaManagedDataTester()); |
414 | 414 |
415 tester->PopulateTestQuotaManagedTemporaryData(GetMockManager()); | 415 tester->PopulateTestQuotaManagedTemporaryData(GetMockManager()); |
416 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 416 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, |
417 BrowsingDataRemover::REMOVE_SITE_DATA & | 417 BrowsingDataRemover::REMOVE_SITE_DATA & |
418 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 418 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
419 | 419 |
420 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 420 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
421 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 421 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
422 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 422 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
423 quota::kStorageTypeTemporary)); | 423 quota::kStorageTypeTemporary)); |
424 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 424 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
425 quota::kStorageTypeTemporary)); | 425 quota::kStorageTypeTemporary)); |
426 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 426 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
427 quota::kStorageTypeTemporary)); | 427 quota::kStorageTypeTemporary)); |
428 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 428 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
429 quota::kStorageTypePersistent)); | 429 quota::kStorageTypePersistent)); |
430 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 430 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
431 quota::kStorageTypePersistent)); | 431 quota::kStorageTypePersistent)); |
432 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 432 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
433 quota::kStorageTypePersistent)); | 433 quota::kStorageTypePersistent)); |
434 } | 434 } |
435 | 435 |
436 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { | 436 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { |
437 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 437 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
438 new RemoveQuotaManagedDataTester()); | 438 new RemoveQuotaManagedDataTester()); |
439 | 439 |
440 tester->PopulateTestQuotaManagedPersistentData(GetMockManager()); | 440 tester->PopulateTestQuotaManagedPersistentData(GetMockManager()); |
441 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 441 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, |
442 BrowsingDataRemover::REMOVE_SITE_DATA & | 442 BrowsingDataRemover::REMOVE_SITE_DATA & |
443 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 443 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
444 | 444 |
445 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 445 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
446 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 446 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
447 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 447 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
448 quota::kStorageTypeTemporary)); | 448 quota::kStorageTypeTemporary)); |
449 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 449 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
450 quota::kStorageTypeTemporary)); | 450 quota::kStorageTypeTemporary)); |
451 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 451 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
452 quota::kStorageTypeTemporary)); | 452 quota::kStorageTypeTemporary)); |
453 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 453 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
454 quota::kStorageTypePersistent)); | 454 quota::kStorageTypePersistent)); |
455 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 455 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
456 quota::kStorageTypePersistent)); | 456 quota::kStorageTypePersistent)); |
457 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 457 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
458 quota::kStorageTypePersistent)); | 458 quota::kStorageTypePersistent)); |
459 } | 459 } |
460 | 460 |
461 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { | 461 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { |
462 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 462 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
463 new RemoveQuotaManagedDataTester()); | 463 new RemoveQuotaManagedDataTester()); |
464 | 464 |
465 GetMockManager(); // Creates the QuotaManager instance. | 465 GetMockManager(); // Creates the QuotaManager instance. |
466 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 466 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, |
467 BrowsingDataRemover::REMOVE_SITE_DATA & | 467 BrowsingDataRemover::REMOVE_SITE_DATA & |
468 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 468 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
469 | 469 |
470 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 470 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
471 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 471 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
472 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 472 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
473 quota::kStorageTypeTemporary)); | 473 quota::kStorageTypeTemporary)); |
474 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 474 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
475 quota::kStorageTypeTemporary)); | 475 quota::kStorageTypeTemporary)); |
476 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 476 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
477 quota::kStorageTypeTemporary)); | 477 quota::kStorageTypeTemporary)); |
478 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 478 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
479 quota::kStorageTypePersistent)); | 479 quota::kStorageTypePersistent)); |
480 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 480 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
481 quota::kStorageTypePersistent)); | 481 quota::kStorageTypePersistent)); |
482 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 482 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
483 quota::kStorageTypePersistent)); | 483 quota::kStorageTypePersistent)); |
484 } | 484 } |
485 | 485 |
486 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { | 486 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { |
487 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 487 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
488 new RemoveQuotaManagedDataTester()); | 488 new RemoveQuotaManagedDataTester()); |
489 tester->PopulateTestQuotaManagedData(GetMockManager()); | 489 tester->PopulateTestQuotaManagedData(GetMockManager()); |
490 | 490 |
491 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 491 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, |
492 BrowsingDataRemover::REMOVE_SITE_DATA & | 492 BrowsingDataRemover::REMOVE_SITE_DATA & |
493 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 493 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
494 | 494 |
495 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 495 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
496 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 496 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
497 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 497 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
498 quota::kStorageTypeTemporary)); | 498 quota::kStorageTypeTemporary)); |
499 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 499 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
500 quota::kStorageTypeTemporary)); | 500 quota::kStorageTypeTemporary)); |
501 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, | 501 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, |
502 quota::kStorageTypeTemporary)); | 502 quota::kStorageTypeTemporary)); |
503 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 503 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
504 quota::kStorageTypePersistent)); | 504 quota::kStorageTypePersistent)); |
505 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, | 505 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, |
506 quota::kStorageTypePersistent)); | 506 quota::kStorageTypePersistent)); |
507 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, | 507 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, |
508 quota::kStorageTypePersistent)); | 508 quota::kStorageTypePersistent)); |
509 } | 509 } |
510 | 510 |
511 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { | 511 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { |
512 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 512 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
513 new RemoveQuotaManagedDataTester()); | 513 new RemoveQuotaManagedDataTester()); |
514 tester->PopulateTestQuotaManagedData(GetMockManager()); | 514 tester->PopulateTestQuotaManagedData(GetMockManager()); |
515 | 515 |
516 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK, | 516 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK, |
517 BrowsingDataRemover::REMOVE_SITE_DATA & | 517 BrowsingDataRemover::REMOVE_SITE_DATA & |
518 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 518 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
519 | 519 |
520 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 520 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
521 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 521 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
522 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 522 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
523 quota::kStorageTypeTemporary)); | 523 quota::kStorageTypeTemporary)); |
524 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 524 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
525 quota::kStorageTypeTemporary)); | 525 quota::kStorageTypeTemporary)); |
526 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 526 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
527 quota::kStorageTypeTemporary)); | 527 quota::kStorageTypeTemporary)); |
528 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 528 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
529 quota::kStorageTypePersistent)); | 529 quota::kStorageTypePersistent)); |
530 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, | 530 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, |
531 quota::kStorageTypePersistent)); | 531 quota::kStorageTypePersistent)); |
532 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, | 532 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, |
533 quota::kStorageTypePersistent)); | 533 quota::kStorageTypePersistent)); |
534 } | 534 } |
535 | 535 |
536 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { | 536 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { |
537 // Protect kOrigin1. | 537 // Protect kOrigin1. |
538 scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy = | 538 scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy = |
539 new MockExtensionSpecialStoragePolicy; | 539 new MockExtensionSpecialStoragePolicy; |
540 mock_policy->AddProtected(kOrigin1.GetOrigin()); | 540 mock_policy->AddProtected(kOrigin1.GetOrigin()); |
541 GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy); | 541 GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy); |
542 | 542 |
543 scoped_ptr<RemoveQuotaManagedDataTester> tester( | 543 scoped_ptr<RemoveQuotaManagedDataTester> tester( |
544 new RemoveQuotaManagedDataTester()); | 544 new RemoveQuotaManagedDataTester()); |
545 tester->PopulateTestQuotaManagedData(GetMockManager()); | 545 tester->PopulateTestQuotaManagedData(GetMockManager()); |
546 | 546 |
547 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 547 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, |
548 BrowsingDataRemover::REMOVE_SITE_DATA & | 548 BrowsingDataRemover::REMOVE_SITE_DATA & |
549 ~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get()); | 549 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, tester.get()); |
550 | 550 |
551 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & | 551 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & |
552 ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask()); | 552 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); |
553 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1, | 553 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1, |
554 quota::kStorageTypeTemporary)); | 554 quota::kStorageTypeTemporary)); |
555 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 555 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
556 quota::kStorageTypeTemporary)); | 556 quota::kStorageTypeTemporary)); |
557 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 557 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
558 quota::kStorageTypeTemporary)); | 558 quota::kStorageTypeTemporary)); |
559 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, | 559 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, |
560 quota::kStorageTypePersistent)); | 560 quota::kStorageTypePersistent)); |
561 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, | 561 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, |
562 quota::kStorageTypePersistent)); | 562 quota::kStorageTypePersistent)); |
563 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, | 563 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, |
564 quota::kStorageTypePersistent)); | 564 quota::kStorageTypePersistent)); |
565 } | 565 } |
566 | 566 |
567 } // namespace | 567 } // namespace |
OLD | NEW |