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

Unified Diff: chrome/browser/browsing_data_remover_unittest.cc

Issue 8907015: Adding chrome::NOTIFICATION_BROWSING_DATA_REMOVED. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Jochen's comments. Created 9 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/browsing_data_remover.cc ('k') | chrome/common/chrome_notification_types.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/browsing_data_remover_unittest.cc
diff --git a/chrome/browser/browsing_data_remover_unittest.cc b/chrome/browser/browsing_data_remover_unittest.cc
index 97353ce85d53c3fa31ac525a040bad26ff66aff9..b2365be857800dfd925d886044a3687abd7cccac 100644
--- a/chrome/browser/browsing_data_remover_unittest.cc
+++ b/chrome/browser/browsing_data_remover_unittest.cc
@@ -12,9 +12,11 @@
#include "base/platform_file.h"
#include "chrome/browser/extensions/mock_extension_special_storage_policy.h"
#include "chrome/browser/history/history.h"
+#include "chrome/common/chrome_notification_types.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/testing_pref_service.h"
#include "chrome/test/base/testing_profile.h"
+#include "content/public/browser/notification_service.h"
#include "content/test/test_browser_thread.h"
#include "net/base/cookie_monster.h"
#include "net/url_request/url_request_context.h"
@@ -120,7 +122,7 @@ class RemoveCookieTester : public BrowsingDataRemoverTester {
if (cookies == "A=1") {
get_cookie_success_ = true;
} else {
- EXPECT_EQ(cookies, "");
+ EXPECT_EQ("", cookies);
get_cookie_success_ = false;
}
Notify();
@@ -234,7 +236,8 @@ class RemoveQuotaManagedDataTester : public BrowsingDataRemoverTester {
// Test Class ----------------------------------------------------------------
-class BrowsingDataRemoverTest : public testing::Test {
+class BrowsingDataRemoverTest : public testing::Test,
+ public content::NotificationObserver {
public:
BrowsingDataRemoverTest()
: ui_thread_(BrowserThread::UI, &message_loop_),
@@ -243,6 +246,8 @@ class BrowsingDataRemoverTest : public testing::Test {
file_thread_(BrowserThread::FILE, &message_loop_),
io_thread_(BrowserThread::IO, &message_loop_),
profile_(new TestingProfile()) {
+ registrar_.Add(this, chrome::NOTIFICATION_BROWSING_DATA_REMOVED,
+ content::Source<Profile>(profile_.get()));
}
virtual ~BrowsingDataRemoverTest() {
@@ -266,6 +271,8 @@ class BrowsingDataRemoverTest : public testing::Test {
base::Time::Now() + base::TimeDelta::FromMilliseconds(10));
remover->AddObserver(tester);
+ called_with_details_.reset(new BrowsingDataRemover::NotificationDetails());
+
// BrowsingDataRemover deletes itself when it completes.
remover->Remove(remove_mask);
tester->BlockUntilNotified();
@@ -275,6 +282,14 @@ class BrowsingDataRemoverTest : public testing::Test {
return profile_.get();
}
+ base::Time GetBeginTime() {
+ return called_with_details_->removal_begin;
+ }
+
+ int GetRemovalMask() {
+ return called_with_details_->removal_mask;
+ }
+
quota::MockQuotaManager* GetMockManager() {
if (profile_->GetQuotaManager() == NULL) {
profile_->SetQuotaManager(new quota::MockQuotaManager(
@@ -287,7 +302,25 @@ class BrowsingDataRemoverTest : public testing::Test {
return (quota::MockQuotaManager*) profile_->GetQuotaManager();
}
+ // content::NotificationObserver implementation.
+ virtual void Observe(int type,
+ const content::NotificationSource& source,
+ const content::NotificationDetails& details) OVERRIDE {
+ DCHECK_EQ(type, chrome::NOTIFICATION_BROWSING_DATA_REMOVED);
+
+ // We're not taking ownership of the details object, but storing a copy of
+ // it locally.
+ called_with_details_.reset(new BrowsingDataRemover::NotificationDetails(
+ *content::Details<BrowsingDataRemover::NotificationDetails>(
+ details).ptr()));
+
+ registrar_.RemoveAll();
+ }
+
private:
+ scoped_ptr<BrowsingDataRemover::NotificationDetails> called_with_details_;
+ content::NotificationRegistrar registrar_;
+
// message_loop_, as well as all the threads associated with it must be
// defined before profile_ to prevent explosions. Oh how I love C++.
MessageLoopForUI message_loop_;
@@ -313,6 +346,7 @@ TEST_F(BrowsingDataRemoverTest, RemoveCookieForever) {
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_COOKIES, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
EXPECT_FALSE(tester->ContainsCookie());
}
@@ -326,6 +360,7 @@ TEST_F(BrowsingDataRemoverTest, RemoveHistoryForever) {
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_HISTORY, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1));
}
@@ -343,6 +378,7 @@ TEST_F(BrowsingDataRemoverTest, RemoveHistoryForLastHour) {
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
BrowsingDataRemover::REMOVE_HISTORY, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1));
EXPECT_TRUE(tester->HistoryContainsURL(kOrigin2));
}
@@ -356,6 +392,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
@@ -379,6 +417,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
@@ -402,6 +442,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
@@ -425,6 +467,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
@@ -448,6 +492,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
@@ -471,6 +517,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
@@ -500,6 +548,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) {
BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_LSO_DATA, tester.get());
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
+ ~BrowsingDataRemover::REMOVE_LSO_DATA, GetRemovalMask());
EXPECT_TRUE(GetMockManager()->OriginHasData(kOrigin1,
quota::kStorageTypeTemporary));
EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2,
« no previous file with comments | « chrome/browser/browsing_data_remover.cc ('k') | chrome/common/chrome_notification_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698