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

Side by Side Diff: chrome/browser/browsing_data_remover_unittest.cc

Issue 10413072: Teaching BrowsingDataRemover how to delete application data. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Inadvertant include. Created 8 years, 7 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 | Annotate | Revision Log
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 "chrome/browser/browsing_data_remover.h" 5 #include "chrome/browser/browsing_data_remover.h"
6 6
7 #include <set> 7 #include <set>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after
361 // posts a message to the WEBKIT thread to delete some of its member 361 // posts a message to the WEBKIT thread to delete some of its member
362 // variables. We need to ensure that the profile is destroyed, and that 362 // variables. We need to ensure that the profile is destroyed, and that
363 // the message loop is cleared out, before destroying the threads and loop. 363 // the message loop is cleared out, before destroying the threads and loop.
364 // Otherwise we leak memory. 364 // Otherwise we leak memory.
365 profile_.reset(); 365 profile_.reset();
366 message_loop_.RunAllPending(); 366 message_loop_.RunAllPending();
367 } 367 }
368 368
369 void BlockUntilBrowsingDataRemoved(BrowsingDataRemover::TimePeriod period, 369 void BlockUntilBrowsingDataRemoved(BrowsingDataRemover::TimePeriod period,
370 int remove_mask, 370 int remove_mask,
371 bool include_protected_origins,
371 BrowsingDataRemoverTester* tester) { 372 BrowsingDataRemoverTester* tester) {
372 BrowsingDataRemover* remover = new BrowsingDataRemover( 373 BrowsingDataRemover* remover = new BrowsingDataRemover(
373 profile_.get(), period, 374 profile_.get(), period,
374 base::Time::Now() + base::TimeDelta::FromMilliseconds(10)); 375 base::Time::Now() + base::TimeDelta::FromMilliseconds(10));
375 remover->OverrideQuotaManagerForTesting(GetMockManager()); 376 remover->OverrideQuotaManagerForTesting(GetMockManager());
376 remover->AddObserver(tester); 377 remover->AddObserver(tester);
377 378
378 called_with_details_.reset(new BrowsingDataRemover::NotificationDetails()); 379 called_with_details_.reset(new BrowsingDataRemover::NotificationDetails());
379 380
380 // BrowsingDataRemover deletes itself when it completes. 381 // BrowsingDataRemover deletes itself when it completes.
381 remover->Remove(remove_mask); 382 remover->Remove(remove_mask, include_protected_origins);
382 tester->BlockUntilNotified(); 383 tester->BlockUntilNotified();
383 } 384 }
384 385
385 void BlockUntilOriginDataRemoved(BrowsingDataRemover::TimePeriod period, 386 void BlockUntilOriginDataRemoved(BrowsingDataRemover::TimePeriod period,
386 int remove_mask, 387 int remove_mask,
387 const GURL& remove_origin, 388 const GURL& remove_origin,
388 BrowsingDataRemoverTester* tester) { 389 BrowsingDataRemoverTester* tester) {
389 BrowsingDataRemover* remover = new BrowsingDataRemover( 390 BrowsingDataRemover* remover = new BrowsingDataRemover(
390 profile_.get(), period, 391 profile_.get(), period,
391 base::Time::Now() + base::TimeDelta::FromMilliseconds(10)); 392 base::Time::Now() + base::TimeDelta::FromMilliseconds(10));
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
463 // Tests --------------------------------------------------------------------- 464 // Tests ---------------------------------------------------------------------
464 465
465 TEST_F(BrowsingDataRemoverTest, RemoveCookieForever) { 466 TEST_F(BrowsingDataRemoverTest, RemoveCookieForever) {
466 scoped_ptr<RemoveProfileCookieTester> tester( 467 scoped_ptr<RemoveProfileCookieTester> tester(
467 new RemoveProfileCookieTester(GetProfile())); 468 new RemoveProfileCookieTester(GetProfile()));
468 469
469 tester->AddCookie(); 470 tester->AddCookie();
470 ASSERT_TRUE(tester->ContainsCookie()); 471 ASSERT_TRUE(tester->ContainsCookie());
471 472
472 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 473 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
473 BrowsingDataRemover::REMOVE_COOKIES, tester.get()); 474 BrowsingDataRemover::REMOVE_COOKIES, false, tester.get());
474 475
475 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); 476 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
476 EXPECT_FALSE(tester->ContainsCookie()); 477 EXPECT_FALSE(tester->ContainsCookie());
477 } 478 }
478 479
479 TEST_F(BrowsingDataRemoverTest, RemoveCookieLastHour) { 480 TEST_F(BrowsingDataRemoverTest, RemoveCookieLastHour) {
480 scoped_ptr<RemoveProfileCookieTester> tester( 481 scoped_ptr<RemoveProfileCookieTester> tester(
481 new RemoveProfileCookieTester(GetProfile())); 482 new RemoveProfileCookieTester(GetProfile()));
482 483
483 tester->AddCookie(); 484 tester->AddCookie();
484 ASSERT_TRUE(tester->ContainsCookie()); 485 ASSERT_TRUE(tester->ContainsCookie());
485 486
486 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, 487 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
487 BrowsingDataRemover::REMOVE_COOKIES, tester.get()); 488 BrowsingDataRemover::REMOVE_COOKIES, false, tester.get());
488 489
489 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); 490 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
490 EXPECT_FALSE(tester->ContainsCookie()); 491 EXPECT_FALSE(tester->ContainsCookie());
491 } 492 }
492 493
493 #if defined(ENABLE_SAFE_BROWSING) 494 #if defined(ENABLE_SAFE_BROWSING)
494 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForever) { 495 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForever) {
495 scoped_ptr<RemoveSafeBrowsingCookieTester> tester( 496 scoped_ptr<RemoveSafeBrowsingCookieTester> tester(
496 new RemoveSafeBrowsingCookieTester()); 497 new RemoveSafeBrowsingCookieTester());
497 498
498 tester->AddCookie(); 499 tester->AddCookie();
499 ASSERT_TRUE(tester->ContainsCookie()); 500 ASSERT_TRUE(tester->ContainsCookie());
500 501
501 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 502 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
502 BrowsingDataRemover::REMOVE_COOKIES, tester.get()); 503 BrowsingDataRemover::REMOVE_COOKIES, false, tester.get());
503 504
504 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); 505 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
505 EXPECT_FALSE(tester->ContainsCookie()); 506 EXPECT_FALSE(tester->ContainsCookie());
506 } 507 }
507 508
508 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieLastHour) { 509 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieLastHour) {
509 scoped_ptr<RemoveSafeBrowsingCookieTester> tester( 510 scoped_ptr<RemoveSafeBrowsingCookieTester> tester(
510 new RemoveSafeBrowsingCookieTester()); 511 new RemoveSafeBrowsingCookieTester());
511 512
512 tester->AddCookie(); 513 tester->AddCookie();
513 ASSERT_TRUE(tester->ContainsCookie()); 514 ASSERT_TRUE(tester->ContainsCookie());
514 515
515 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, 516 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
516 BrowsingDataRemover::REMOVE_COOKIES, tester.get()); 517 BrowsingDataRemover::REMOVE_COOKIES, false, tester.get());
517 518
518 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); 519 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
519 // Removing with time period other than EVERYTHING should not clear safe 520 // Removing with time period other than EVERYTHING should not clear safe
520 // browsing cookies. 521 // browsing cookies.
521 EXPECT_TRUE(tester->ContainsCookie()); 522 EXPECT_TRUE(tester->ContainsCookie());
522 } 523 }
523 #endif 524 #endif
524 525
525 TEST_F(BrowsingDataRemoverTest, RemoveServerBoundCertForever) { 526 TEST_F(BrowsingDataRemoverTest, RemoveServerBoundCertForever) {
526 scoped_ptr<RemoveServerBoundCertTester> tester( 527 scoped_ptr<RemoveServerBoundCertTester> tester(
527 new RemoveServerBoundCertTester(GetProfile())); 528 new RemoveServerBoundCertTester(GetProfile()));
528 529
529 tester->AddServerBoundCert(kTestOrigin1); 530 tester->AddServerBoundCert(kTestOrigin1);
530 EXPECT_EQ(1, tester->ServerBoundCertCount()); 531 EXPECT_EQ(1, tester->ServerBoundCertCount());
531 532
532 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 533 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
533 BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, tester.get()); 534 BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, false, tester.get());
534 535
535 EXPECT_EQ(BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, GetRemovalMask()); 536 EXPECT_EQ(BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, GetRemovalMask());
536 EXPECT_EQ(0, tester->ServerBoundCertCount()); 537 EXPECT_EQ(0, tester->ServerBoundCertCount());
537 } 538 }
538 539
539 TEST_F(BrowsingDataRemoverTest, RemoveServerBoundCertLastHour) { 540 TEST_F(BrowsingDataRemoverTest, RemoveServerBoundCertLastHour) {
540 scoped_ptr<RemoveServerBoundCertTester> tester( 541 scoped_ptr<RemoveServerBoundCertTester> tester(
541 new RemoveServerBoundCertTester(GetProfile())); 542 new RemoveServerBoundCertTester(GetProfile()));
542 543
543 base::Time now = base::Time::Now(); 544 base::Time now = base::Time::Now();
544 tester->AddServerBoundCert(kTestOrigin1); 545 tester->AddServerBoundCert(kTestOrigin1);
545 tester->AddServerBoundCertWithTimes(kTestOrigin2, 546 tester->AddServerBoundCertWithTimes(kTestOrigin2,
546 now - base::TimeDelta::FromHours(2), 547 now - base::TimeDelta::FromHours(2),
547 now); 548 now);
548 EXPECT_EQ(2, tester->ServerBoundCertCount()); 549 EXPECT_EQ(2, tester->ServerBoundCertCount());
549 550
550 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, 551 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
551 BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, tester.get()); 552 BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, false, tester.get());
552 553
553 EXPECT_EQ(BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, GetRemovalMask()); 554 EXPECT_EQ(BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, GetRemovalMask());
554 EXPECT_EQ(1, tester->ServerBoundCertCount()); 555 EXPECT_EQ(1, tester->ServerBoundCertCount());
555 net::ServerBoundCertStore::ServerBoundCertList certs; 556 net::ServerBoundCertStore::ServerBoundCertList certs;
556 tester->GetCertStore()->GetAllServerBoundCerts(&certs); 557 tester->GetCertStore()->GetAllServerBoundCerts(&certs);
557 EXPECT_EQ(kTestOrigin2, certs.front().server_identifier()); 558 EXPECT_EQ(kTestOrigin2, certs.front().server_identifier());
558 } 559 }
559 560
560 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForever) { 561 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForever) {
561 scoped_ptr<RemoveHistoryTester> tester( 562 scoped_ptr<RemoveHistoryTester> tester(
562 new RemoveHistoryTester(GetProfile())); 563 new RemoveHistoryTester(GetProfile()));
563 564
564 tester->AddHistory(kOrigin1, base::Time::Now()); 565 tester->AddHistory(kOrigin1, base::Time::Now());
565 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1)); 566 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1));
566 567
567 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 568 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
568 BrowsingDataRemover::REMOVE_HISTORY, tester.get()); 569 BrowsingDataRemover::REMOVE_HISTORY, false, tester.get());
569 570
570 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); 571 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
571 EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1)); 572 EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1));
572 } 573 }
573 574
574 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForLastHour) { 575 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForLastHour) {
575 scoped_ptr<RemoveHistoryTester> tester( 576 scoped_ptr<RemoveHistoryTester> tester(
576 new RemoveHistoryTester(GetProfile())); 577 new RemoveHistoryTester(GetProfile()));
577 578
578 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); 579 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2);
579 580
580 tester->AddHistory(kOrigin1, base::Time::Now()); 581 tester->AddHistory(kOrigin1, base::Time::Now());
581 tester->AddHistory(kOrigin2, two_hours_ago); 582 tester->AddHistory(kOrigin2, two_hours_ago);
582 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1)); 583 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1));
583 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin2)); 584 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin2));
584 585
585 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, 586 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
586 BrowsingDataRemover::REMOVE_HISTORY, tester.get()); 587 BrowsingDataRemover::REMOVE_HISTORY, false, tester.get());
587 588
588 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); 589 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
589 EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1)); 590 EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1));
590 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2)); 591 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2));
591 } 592 }
592 593
593 TEST_F(BrowsingDataRemoverTest, QuotaClientMaskGeneration) { 594 TEST_F(BrowsingDataRemoverTest, QuotaClientMaskGeneration) {
594 EXPECT_EQ(quota::QuotaClient::kFileSystem, 595 EXPECT_EQ(quota::QuotaClient::kFileSystem,
595 BrowsingDataRemover::GenerateQuotaClientMask( 596 BrowsingDataRemover::GenerateQuotaClientMask(
596 BrowsingDataRemover::REMOVE_FILE_SYSTEMS)); 597 BrowsingDataRemover::REMOVE_FILE_SYSTEMS));
(...skipping 14 matching lines...) Expand all
611 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | 612 BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
612 BrowsingDataRemover::REMOVE_WEBSQL | 613 BrowsingDataRemover::REMOVE_WEBSQL |
613 BrowsingDataRemover::REMOVE_APPCACHE | 614 BrowsingDataRemover::REMOVE_APPCACHE |
614 BrowsingDataRemover::REMOVE_INDEXEDDB)); 615 BrowsingDataRemover::REMOVE_INDEXEDDB));
615 } 616 }
616 617
617 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { 618 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) {
618 tester_.PopulateTestQuotaManagedData(GetMockManager()); 619 tester_.PopulateTestQuotaManagedData(GetMockManager());
619 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 620 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
620 BrowsingDataRemover::REMOVE_SITE_DATA & 621 BrowsingDataRemover::REMOVE_SITE_DATA &
621 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 622 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
622 623
623 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 624 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
624 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 625 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
625 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 626 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
626 kClientFile)); 627 kClientFile));
627 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 628 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
628 kClientFile)); 629 kClientFile));
629 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 630 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
630 kClientFile)); 631 kClientFile));
631 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 632 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
632 kClientFile)); 633 kClientFile));
633 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent, 634 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
634 kClientFile)); 635 kClientFile));
635 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 636 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
636 kClientFile)); 637 kClientFile));
637 } 638 }
638 639
639 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { 640 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) {
640 tester_.PopulateTestQuotaManagedTemporaryData(GetMockManager()); 641 tester_.PopulateTestQuotaManagedTemporaryData(GetMockManager());
641 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 642 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
642 BrowsingDataRemover::REMOVE_SITE_DATA & 643 BrowsingDataRemover::REMOVE_SITE_DATA &
643 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 644 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
644 645
645 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 646 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
646 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 647 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
647 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 648 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
648 kClientFile)); 649 kClientFile));
649 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 650 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
650 kClientFile)); 651 kClientFile));
651 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 652 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
652 kClientFile)); 653 kClientFile));
653 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 654 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
654 kClientFile)); 655 kClientFile));
655 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent, 656 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
656 kClientFile)); 657 kClientFile));
657 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 658 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
658 kClientFile)); 659 kClientFile));
659 } 660 }
660 661
661 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { 662 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) {
662 tester_.PopulateTestQuotaManagedPersistentData(GetMockManager()); 663 tester_.PopulateTestQuotaManagedPersistentData(GetMockManager());
663 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 664 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
664 BrowsingDataRemover::REMOVE_SITE_DATA & 665 BrowsingDataRemover::REMOVE_SITE_DATA &
665 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 666 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
666 667
667 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 668 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
668 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 669 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
669 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 670 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
670 kClientFile)); 671 kClientFile));
671 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 672 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
672 kClientFile)); 673 kClientFile));
673 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 674 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
674 kClientFile)); 675 kClientFile));
675 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 676 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
676 kClientFile)); 677 kClientFile));
677 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent, 678 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
678 kClientFile)); 679 kClientFile));
679 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 680 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
680 kClientFile)); 681 kClientFile));
681 } 682 }
682 683
683 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { 684 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) {
684 GetMockManager(); // Creates the QuotaManager instance. 685 GetMockManager(); // Creates the QuotaManager instance.
685 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 686 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
686 BrowsingDataRemover::REMOVE_SITE_DATA & 687 BrowsingDataRemover::REMOVE_SITE_DATA &
687 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 688 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
688 689
689 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 690 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
690 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 691 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
691 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 692 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
692 kClientFile)); 693 kClientFile));
693 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 694 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
694 kClientFile)); 695 kClientFile));
695 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 696 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
696 kClientFile)); 697 kClientFile));
697 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 698 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
(...skipping 30 matching lines...) Expand all
728 kClientFile)); 729 kClientFile));
729 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 730 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
730 kClientFile)); 731 kClientFile));
731 } 732 }
732 733
733 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { 734 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) {
734 tester_.PopulateTestQuotaManagedData(GetMockManager()); 735 tester_.PopulateTestQuotaManagedData(GetMockManager());
735 736
736 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, 737 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
737 BrowsingDataRemover::REMOVE_SITE_DATA & 738 BrowsingDataRemover::REMOVE_SITE_DATA &
738 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 739 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
739 740
740 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 741 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
741 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 742 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
742 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 743 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
743 kClientFile)); 744 kClientFile));
744 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 745 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
745 kClientFile)); 746 kClientFile));
746 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 747 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
747 kClientFile)); 748 kClientFile));
748 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 749 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
749 kClientFile)); 750 kClientFile));
750 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent, 751 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
751 kClientFile)); 752 kClientFile));
752 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 753 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
753 kClientFile)); 754 kClientFile));
754 } 755 }
755 756
756 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { 757 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) {
757 tester_.PopulateTestQuotaManagedData(GetMockManager()); 758 tester_.PopulateTestQuotaManagedData(GetMockManager());
758 759
759 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK, 760 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK,
760 BrowsingDataRemover::REMOVE_SITE_DATA & 761 BrowsingDataRemover::REMOVE_SITE_DATA &
761 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 762 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
762 763
763 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 764 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
764 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 765 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
765 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 766 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
766 kClientFile)); 767 kClientFile));
767 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 768 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
768 kClientFile)); 769 kClientFile));
769 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 770 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
770 kClientFile)); 771 kClientFile));
771 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 772 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
772 kClientFile)); 773 kClientFile));
773 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent, 774 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
774 kClientFile)); 775 kClientFile));
775 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 776 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
776 kClientFile)); 777 kClientFile));
777 } 778 }
778 779
779 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { 780 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) {
780 // Protect kOrigin1. 781 // Protect kOrigin1.
781 scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy = 782 scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
782 new MockExtensionSpecialStoragePolicy; 783 new MockExtensionSpecialStoragePolicy;
783 mock_policy->AddProtected(kOrigin1.GetOrigin()); 784 mock_policy->AddProtected(kOrigin1.GetOrigin());
784 GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy); 785 GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy);
785 786
786 tester_.PopulateTestQuotaManagedData(GetMockManager()); 787 tester_.PopulateTestQuotaManagedData(GetMockManager());
787 788
788 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 789 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
789 BrowsingDataRemover::REMOVE_SITE_DATA & 790 BrowsingDataRemover::REMOVE_SITE_DATA &
790 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_); 791 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, false, &tester_);
791 792
792 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA & 793 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
793 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask()); 794 ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
794 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1, kTemporary, 795 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
795 kClientFile)); 796 kClientFile));
796 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary, 797 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
797 kClientFile)); 798 kClientFile));
798 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 799 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
799 kClientFile)); 800 kClientFile));
800 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 801 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
832 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary, 833 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
833 kClientFile)); 834 kClientFile));
834 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent, 835 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
835 kClientFile)); 836 kClientFile));
836 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent, 837 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
837 kClientFile)); 838 kClientFile));
838 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent, 839 EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
839 kClientFile)); 840 kClientFile));
840 } 841 }
841 842
843 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) {
844 // Protect kOrigin1.
845 scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
846 new MockExtensionSpecialStoragePolicy;
847 mock_policy->AddProtected(kOrigin1.GetOrigin());
848 GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy);
849
850 tester_.PopulateTestQuotaManagedData(GetMockManager());
851
852 // Try to remove kOrigin1. Expect success.
853 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
854 BrowsingDataRemover::REMOVE_APPCACHE |
855 BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
856 BrowsingDataRemover::REMOVE_INDEXEDDB |
857 BrowsingDataRemover::REMOVE_WEBSQL, true, &tester_);
858
859 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE |
860 BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
861 BrowsingDataRemover::REMOVE_INDEXEDDB |
862 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
863 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
864 kClientFile));
865 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
866 kClientFile));
867 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
868 kClientFile));
869 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
870 kClientFile));
871 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
872 kClientFile));
873 EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
874 kClientFile));
875 }
876
842 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) { 877 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) {
843 tester_.PopulateTestQuotaManagedNonBrowsingData(GetMockManager()); 878 tester_.PopulateTestQuotaManagedNonBrowsingData(GetMockManager());
844 879
845 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, 880 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
846 BrowsingDataRemover::REMOVE_APPCACHE | 881 BrowsingDataRemover::REMOVE_APPCACHE |
847 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | 882 BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
848 BrowsingDataRemover::REMOVE_INDEXEDDB | 883 BrowsingDataRemover::REMOVE_INDEXEDDB |
849 BrowsingDataRemover::REMOVE_WEBSQL, &tester_); 884 BrowsingDataRemover::REMOVE_WEBSQL, false, &tester_);
850 885
851 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | 886 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE |
852 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | 887 BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
853 BrowsingDataRemover::REMOVE_INDEXEDDB | 888 BrowsingDataRemover::REMOVE_INDEXEDDB |
854 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask()); 889 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
855 890
856 // Check that extension and devtools data isn't removed. 891 // Check that extension and devtools data isn't removed.
857 EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginExt, kTemporary, 892 EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginExt, kTemporary,
858 kClientFile)); 893 kClientFile));
859 EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginExt, kPersistent, 894 EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginExt, kPersistent,
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
894 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1)); 929 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1));
895 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin2)); 930 ASSERT_TRUE(tester->HistoryContainsURL(kOrigin2));
896 931
897 BlockUntilOriginDataRemoved(BrowsingDataRemover::LAST_HOUR, 932 BlockUntilOriginDataRemoved(BrowsingDataRemover::LAST_HOUR,
898 BrowsingDataRemover::REMOVE_HISTORY, kOrigin2, tester.get()); 933 BrowsingDataRemover::REMOVE_HISTORY, kOrigin2, tester.get());
899 934
900 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); 935 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
901 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin1)); 936 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin1));
902 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2)); 937 EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2));
903 } 938 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698