| Index: chrome/browser/browsing_data/browsing_data_remover_unittest.cc
|
| diff --git a/chrome/browser/browsing_data/browsing_data_remover_unittest.cc b/chrome/browser/browsing_data/browsing_data_remover_unittest.cc
|
| index 559a19981c6ad0a91f70cf36ed7a2a63574371d5..4b5bf60382268d8fc277547396345ec752081670 100644
|
| --- a/chrome/browser/browsing_data/browsing_data_remover_unittest.cc
|
| +++ b/chrome/browser/browsing_data/browsing_data_remover_unittest.cc
|
| @@ -44,11 +44,9 @@
|
| #include "net/url_request/url_request_context.h"
|
| #include "net/url_request/url_request_context_getter.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| -#include "webkit/browser/quota/mock_quota_manager.h"
|
| -#include "webkit/browser/quota/quota_manager.h"
|
| -#include "webkit/common/quota/quota_types.h"
|
|
|
| using content::BrowserThread;
|
| +using content::StoragePartition;
|
|
|
| namespace {
|
|
|
| @@ -80,47 +78,6 @@ const base::FilePath::CharType kDomStorageOrigin3[] =
|
| const base::FilePath::CharType kDomStorageExt[] = FILE_PATH_LITERAL(
|
| "chrome-extension_abcdefghijklmnopqrstuvwxyz_0.localstorage");
|
|
|
| -const quota::StorageType kTemporary = quota::kStorageTypeTemporary;
|
| -const quota::StorageType kPersistent = quota::kStorageTypePersistent;
|
| -
|
| -const quota::QuotaClient::ID kClientFile = quota::QuotaClient::kFileSystem;
|
| -
|
| -void PopulateTestQuotaManagedNonBrowsingData(quota::MockQuotaManager* manager) {
|
| - manager->AddOrigin(kOriginDevTools, kTemporary, kClientFile, base::Time());
|
| - manager->AddOrigin(kOriginDevTools, kPersistent, kClientFile, base::Time());
|
| - manager->AddOrigin(kOriginExt, kTemporary, kClientFile, base::Time());
|
| - manager->AddOrigin(kOriginExt, kPersistent, kClientFile, base::Time());
|
| -}
|
| -
|
| -void PopulateTestQuotaManagedPersistentData(quota::MockQuotaManager* manager) {
|
| - manager->AddOrigin(kOrigin2, kPersistent, kClientFile, base::Time());
|
| - manager->AddOrigin(kOrigin3, kPersistent, kClientFile,
|
| - base::Time::Now() - base::TimeDelta::FromDays(1));
|
| -
|
| - EXPECT_FALSE(manager->OriginHasData(kOrigin1, kPersistent, kClientFile));
|
| - EXPECT_TRUE(manager->OriginHasData(kOrigin2, kPersistent, kClientFile));
|
| - EXPECT_TRUE(manager->OriginHasData(kOrigin3, kPersistent, kClientFile));
|
| -}
|
| -
|
| -void PopulateTestQuotaManagedTemporaryData(quota::MockQuotaManager* manager) {
|
| - manager->AddOrigin(kOrigin1, kTemporary, kClientFile, base::Time::Now());
|
| - manager->AddOrigin(kOrigin3, kTemporary, kClientFile,
|
| - base::Time::Now() - base::TimeDelta::FromDays(1));
|
| -
|
| - EXPECT_TRUE(manager->OriginHasData(kOrigin1, kTemporary, kClientFile));
|
| - EXPECT_FALSE(manager->OriginHasData(kOrigin2, kTemporary, kClientFile));
|
| - EXPECT_TRUE(manager->OriginHasData(kOrigin3, kTemporary, kClientFile));
|
| -}
|
| -
|
| -void PopulateTestQuotaManagedData(quota::MockQuotaManager* manager) {
|
| - // Set up kOrigin1 with a temporary quota, kOrigin2 with a persistent
|
| - // quota, and kOrigin3 with both. kOrigin1 is modified now, kOrigin2
|
| - // is modified at the beginning of time, and kOrigin3 is modified one day
|
| - // ago.
|
| - PopulateTestQuotaManagedPersistentData(manager);
|
| - PopulateTestQuotaManagedTemporaryData(manager);
|
| -}
|
| -
|
| class AwaitCompletionHelper : public BrowsingDataRemover::Observer {
|
| public:
|
| AwaitCompletionHelper() : start_(false), already_quit_(false) {}
|
| @@ -163,6 +120,93 @@ class AwaitCompletionHelper : public BrowsingDataRemover::Observer {
|
| DISALLOW_COPY_AND_ASSIGN(AwaitCompletionHelper);
|
| };
|
|
|
| +struct StoragePartitionRemovalData {
|
| + uint32 remove_mask;
|
| + uint32 quota_storage_remove_mask;
|
| + GURL remove_origin;
|
| + base::Time remove_begin;
|
| + base::Time remove_end;
|
| + StoragePartition::OriginMatcherFunction origin_matcher;
|
| +
|
| + StoragePartitionRemovalData() : remove_mask(0),
|
| + quota_storage_remove_mask(0) {}
|
| +};
|
| +
|
| +class TestStoragePartition : public StoragePartition {
|
| + public:
|
| + TestStoragePartition() {}
|
| + virtual ~TestStoragePartition() {}
|
| +
|
| + // content::StoragePartition implementation.
|
| + virtual base::FilePath GetPath() OVERRIDE { return base::FilePath(); }
|
| + virtual net::URLRequestContextGetter* GetURLRequestContext() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual net::URLRequestContextGetter* GetMediaURLRequestContext() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual quota::QuotaManager* GetQuotaManager() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual appcache::AppCacheService* GetAppCacheService() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual fileapi::FileSystemContext* GetFileSystemContext() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual webkit_database::DatabaseTracker* GetDatabaseTracker() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual content::DOMStorageContext* GetDOMStorageContext() OVERRIDE {
|
| + return NULL;
|
| + }
|
| + virtual content::IndexedDBContext* GetIndexedDBContext() OVERRIDE {
|
| + return NULL;
|
| + }
|
| +
|
| + virtual void ClearDataForOrigin(
|
| + uint32 remove_mask,
|
| + uint32 quota_storage_remove_mask,
|
| + const GURL& storage_origin,
|
| + net::URLRequestContextGetter* rq_context) OVERRIDE {}
|
| +
|
| + virtual void ClearData(uint32 remove_mask,
|
| + uint32 quota_storage_remove_mask,
|
| + const GURL* storage_origin,
|
| + const OriginMatcherFunction& origin_matcher,
|
| + const base::Time begin,
|
| + const base::Time end,
|
| + const base::Closure& callback) OVERRIDE {
|
| + // Store stuff to verify parameters' correctness later.
|
| + storage_partition_removal_data_.remove_mask = remove_mask;
|
| + storage_partition_removal_data_.quota_storage_remove_mask =
|
| + quota_storage_remove_mask;
|
| + storage_partition_removal_data_.remove_origin =
|
| + storage_origin ? *storage_origin : GURL();
|
| + storage_partition_removal_data_.remove_begin = begin;
|
| + storage_partition_removal_data_.remove_end = end;
|
| + storage_partition_removal_data_.origin_matcher = origin_matcher;
|
| +
|
| + BrowserThread::PostTask(
|
| + BrowserThread::UI,
|
| + FROM_HERE,
|
| + base::Bind(&TestStoragePartition::AsyncRunCallback,
|
| + base::Unretained(this), callback));
|
| + }
|
| +
|
| + StoragePartitionRemovalData GetStoragePartitionRemovalData() {
|
| + return storage_partition_removal_data_;
|
| + }
|
| + private:
|
| + void AsyncRunCallback(const base::Closure& callback) {
|
| + callback.Run();
|
| + }
|
| +
|
| + StoragePartitionRemovalData storage_partition_removal_data_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(TestStoragePartition);
|
| +};
|
| +
|
| } // namespace
|
|
|
| // Testers -------------------------------------------------------------------
|
| @@ -566,7 +610,6 @@ class BrowsingDataRemoverTest : public testing::Test,
|
| bool include_protected_origins) {
|
| BrowsingDataRemover* remover = BrowsingDataRemover::CreateForPeriod(
|
| profile_.get(), period);
|
| - remover->OverrideQuotaManagerForTesting(GetMockManager());
|
|
|
| AwaitCompletionHelper await_completion;
|
| remover->AddObserver(&await_completion);
|
| @@ -586,7 +629,6 @@ class BrowsingDataRemoverTest : public testing::Test,
|
| const GURL& remove_origin) {
|
| BrowsingDataRemover* remover = BrowsingDataRemover::CreateForPeriod(
|
| profile_.get(), period);
|
| - remover->OverrideQuotaManagerForTesting(GetMockManager());
|
|
|
| AwaitCompletionHelper await_completion;
|
| remover->AddObserver(&await_completion);
|
| @@ -599,6 +641,56 @@ class BrowsingDataRemoverTest : public testing::Test,
|
| await_completion.BlockUntilNotified();
|
| }
|
|
|
| + void BlockUntilStoragePartitionDataRemoved(
|
| + BrowsingDataRemover::TimePeriod period,
|
| + int remove_mask,
|
| + bool include_protected_origins) {
|
| + BrowsingDataRemover* remover = BrowsingDataRemover::CreateForPeriod(
|
| + profile_.get(), period);
|
| + TestStoragePartition storage_partition;
|
| + remover->OverrideStoragePartitionForTesting(&storage_partition);
|
| +
|
| + AwaitCompletionHelper await_completion;
|
| + remover->AddObserver(&await_completion);
|
| +
|
| + called_with_details_.reset(new BrowsingDataRemover::NotificationDetails());
|
| +
|
| + // BrowsingDataRemover deletes itself when it completes.
|
| + int origin_set_mask = BrowsingDataHelper::UNPROTECTED_WEB;
|
| + if (include_protected_origins)
|
| + origin_set_mask |= BrowsingDataHelper::PROTECTED_WEB;
|
| + remover->Remove(remove_mask, origin_set_mask);
|
| + await_completion.BlockUntilNotified();
|
| +
|
| + // Save so we can verify later.
|
| + storage_partition_removal_data_ =
|
| + storage_partition.GetStoragePartitionRemovalData();
|
| + }
|
| +
|
| + void BlockUntilStoragePartitionDataForOriginRemoved(
|
| + BrowsingDataRemover::TimePeriod period,
|
| + int remove_mask,
|
| + const GURL& remove_origin) {
|
| + BrowsingDataRemover* remover = BrowsingDataRemover::CreateForPeriod(
|
| + profile_.get(), period);
|
| + TestStoragePartition storage_partition;
|
| + remover->OverrideStoragePartitionForTesting(&storage_partition);
|
| +
|
| + AwaitCompletionHelper await_completion;
|
| + remover->AddObserver(&await_completion);
|
| +
|
| + called_with_details_.reset(new BrowsingDataRemover::NotificationDetails());
|
| +
|
| + // BrowsingDataRemover deletes itself when it completes.
|
| + remover->RemoveImpl(remove_mask, remove_origin,
|
| + BrowsingDataHelper::UNPROTECTED_WEB);
|
| + await_completion.BlockUntilNotified();
|
| +
|
| + // Save so we can verify later.
|
| + storage_partition_removal_data_ =
|
| + storage_partition.GetStoragePartitionRemovalData();
|
| + }
|
| +
|
| TestingProfile* GetProfile() {
|
| return profile_.get();
|
| }
|
| @@ -615,16 +707,8 @@ class BrowsingDataRemoverTest : public testing::Test,
|
| return called_with_details_->origin_set_mask;
|
| }
|
|
|
| - quota::MockQuotaManager* GetMockManager() {
|
| - if (!quota_manager_.get()) {
|
| - quota_manager_ = new quota::MockQuotaManager(
|
| - profile_->IsOffTheRecord(),
|
| - profile_->GetPath(),
|
| - BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO).get(),
|
| - BrowserThread::GetMessageLoopProxyForThread(BrowserThread::DB).get(),
|
| - profile_->GetExtensionSpecialStoragePolicy());
|
| - }
|
| - return quota_manager_.get();
|
| + StoragePartitionRemovalData GetStoragePartitionRemovalData() {
|
| + return storage_partition_removal_data_;
|
| }
|
|
|
| // content::NotificationObserver implementation.
|
| @@ -648,7 +732,8 @@ class BrowsingDataRemoverTest : public testing::Test,
|
|
|
| content::TestBrowserThreadBundle thread_bundle_;
|
| scoped_ptr<TestingProfile> profile_;
|
| - scoped_refptr<quota::MockQuotaManager> quota_manager_;
|
| +
|
| + StoragePartitionRemovalData storage_partition_removal_data_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(BrowsingDataRemoverTest);
|
| };
|
| @@ -945,33 +1030,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveMultipleTypesHistoryProhibited) {
|
| }
|
| #endif
|
|
|
| -TEST_F(BrowsingDataRemoverTest, QuotaClientMaskGeneration) {
|
| - EXPECT_EQ(quota::QuotaClient::kFileSystem,
|
| - BrowsingDataRemover::GenerateQuotaClientMask(
|
| - BrowsingDataRemover::REMOVE_FILE_SYSTEMS));
|
| - EXPECT_EQ(quota::QuotaClient::kDatabase,
|
| - BrowsingDataRemover::GenerateQuotaClientMask(
|
| - BrowsingDataRemover::REMOVE_WEBSQL));
|
| - EXPECT_EQ(quota::QuotaClient::kAppcache,
|
| - BrowsingDataRemover::GenerateQuotaClientMask(
|
| - BrowsingDataRemover::REMOVE_APPCACHE));
|
| - EXPECT_EQ(quota::QuotaClient::kIndexedDatabase,
|
| - BrowsingDataRemover::GenerateQuotaClientMask(
|
| - BrowsingDataRemover::REMOVE_INDEXEDDB));
|
| - EXPECT_EQ(quota::QuotaClient::kFileSystem |
|
| - quota::QuotaClient::kDatabase |
|
| - quota::QuotaClient::kAppcache |
|
| - quota::QuotaClient::kIndexedDatabase,
|
| - BrowsingDataRemover::GenerateQuotaClientMask(
|
| - BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| - BrowsingDataRemover::REMOVE_WEBSQL |
|
| - BrowsingDataRemover::REMOVE_APPCACHE |
|
| - BrowsingDataRemover::REMOVE_INDEXEDDB));
|
| -}
|
| -
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) {
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -982,23 +1042,27 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) {
|
| - PopulateTestQuotaManagedTemporaryData(GetMockManager());
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
|
| + new MockExtensionSpecialStoragePolicy;
|
| + GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
| +
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -1009,23 +1073,34 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| +
|
| + // Check that all related origin data would be removed, that is, origin
|
| + // matcher would match these origin.
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) {
|
| - PopulateTestQuotaManagedPersistentData(GetMockManager());
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
|
| + new MockExtensionSpecialStoragePolicy;
|
| + GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
| +
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -1036,24 +1111,35 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| +
|
| + // Check that all related origin data would be removed, that is, origin
|
| + // matcher would match these origin.
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) {
|
| - GetMockManager(); // Creates the QuotaManager instance.
|
| + scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
|
| + new MockExtensionSpecialStoragePolicy;
|
| + GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
|
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| +
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -1064,25 +1150,32 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| +
|
| + // Check that all related origin data would be removed, that is, origin
|
| + // matcher would match these origin.
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverSpecificOrigin) {
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| -
|
| // Remove Origin 1.
|
| - BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + BlockUntilStoragePartitionDataForOriginRemoved(
|
| + BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB |
|
| @@ -1093,24 +1186,24 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverSpecificOrigin) {
|
| BrowsingDataRemover::REMOVE_INDEXEDDB |
|
| BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_EQ(removal_data.remove_origin, kOrigin1);
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) {
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| -
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::LAST_HOUR,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -1121,24 +1214,29 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| +
|
| + // Persistent data would be left out since we are not removing from
|
| + // beginning of time.
|
| + uint32 expected_quota_mask =
|
| + ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT;
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask);
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| + // Check removal begin time.
|
| + EXPECT_EQ(removal_data.remove_begin, GetBeginTime());
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) {
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| -
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK,
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::LAST_WEEK,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -1149,18 +1247,25 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| +
|
| + // Persistent data would be left out since we are not removing from
|
| + // beginning of time.
|
| + uint32 expected_quota_mask =
|
| + ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT;
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask);
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| + // Check removal begin time.
|
| + EXPECT_EQ(removal_data.remove_begin, GetBeginTime());
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) {
|
| @@ -1170,9 +1275,7 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) {
|
| mock_policy->AddProtected(kOrigin1.GetOrigin());
|
| GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
|
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| -
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_WEBSQL |
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| @@ -1183,18 +1286,26 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) {
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| +
|
| + // Check OriginMatcherFunction, |kOrigin1| would not match mask since it
|
| + // is protected.
|
| + EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin1, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedSpecificOrigin) {
|
| @@ -1204,10 +1315,9 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedSpecificOrigin) {
|
| mock_policy->AddProtected(kOrigin1.GetOrigin());
|
| GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
|
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| -
|
| // Try to remove kOrigin1. Expect failure.
|
| - BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + BlockUntilStoragePartitionDataForOriginRemoved(
|
| + BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB |
|
| @@ -1218,18 +1328,26 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedSpecificOrigin) {
|
| BrowsingDataRemover::REMOVE_INDEXEDDB |
|
| BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_EQ(removal_data.remove_origin, kOrigin1);
|
| +
|
| + // Check OriginMatcherFunction, |kOrigin1| would not match mask since it
|
| + // is protected.
|
| + EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin1, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) {
|
| @@ -1239,10 +1357,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) {
|
| mock_policy->AddProtected(kOrigin1.GetOrigin());
|
| GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
|
|
| - PopulateTestQuotaManagedData(GetMockManager());
|
| -
|
| // Try to remove kOrigin1. Expect success.
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB |
|
| @@ -1254,24 +1370,34 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) {
|
| BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::PROTECTED_WEB |
|
| BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
|
| - kClientFile));
|
| - EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
|
| - kClientFile));
|
| +
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| +
|
| + // Check OriginMatcherFunction, |kOrigin1| would match mask since we
|
| + // would have 'protected' specified in origin_set_mask.
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy));
|
| + EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) {
|
| - PopulateTestQuotaManagedNonBrowsingData(GetMockManager());
|
| + scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
|
| + new MockExtensionSpecialStoragePolicy;
|
| + GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy.get());
|
|
|
| - BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| + BlockUntilStoragePartitionDataRemoved(BrowsingDataRemover::EVERYTHING,
|
| BrowsingDataRemover::REMOVE_APPCACHE |
|
| BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
|
| BrowsingDataRemover::REMOVE_INDEXEDDB |
|
| @@ -1283,15 +1409,24 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) {
|
| BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
|
| EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
|
|
|
| - // Check that extension and devtools data isn't removed.
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginExt, kTemporary,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginExt, kPersistent,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginDevTools, kTemporary,
|
| - kClientFile));
|
| - EXPECT_TRUE(GetMockManager()->OriginHasData(kOriginDevTools, kPersistent,
|
| - kClientFile));
|
| + // Verify storage partition related stuffs.
|
| + StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData();
|
| +
|
| + EXPECT_EQ(removal_data.remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS |
|
| + StoragePartition::REMOVE_DATA_MASK_WEBSQL |
|
| + StoragePartition::REMOVE_DATA_MASK_APPCACHE |
|
| + StoragePartition::REMOVE_DATA_MASK_INDEXEDDB));
|
| + EXPECT_EQ(removal_data.quota_storage_remove_mask,
|
| + static_cast<uint32>(
|
| + StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL));
|
| + EXPECT_TRUE(removal_data.remove_origin.is_empty());
|
| +
|
| + // Check that extension and devtools data wouldn't be removed, that is,
|
| + // origin matcher would not match these origin.
|
| + EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy));
|
| + EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginDevTools, mock_policy));
|
| }
|
|
|
| TEST_F(BrowsingDataRemoverTest, OriginBasedHistoryRemoval) {
|
|
|