summaryrefslogtreecommitdiffstats
path: root/chrome/browser/cookies_tree_model_unittest.cc
diff options
context:
space:
mode:
authorjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-10 13:12:49 +0000
committerjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-10 13:12:49 +0000
commite721ebe885b159f9b18047392be9a0f5834998fb (patch)
tree9a885282fee88e4645a68c1a9b4eaeda0736886e /chrome/browser/cookies_tree_model_unittest.cc
parentf4954a7b55b98530fe831660dd8fd90bcf0c5658 (diff)
downloadchromium_src-e721ebe885b159f9b18047392be9a0f5834998fb.zip
chromium_src-e721ebe885b159f9b18047392be9a0f5834998fb.tar.gz
chromium_src-e721ebe885b159f9b18047392be9a0f5834998fb.tar.bz2
Add a session storage node to the cookies tree view for collected cookies.
Furthermore, local storage and session storage accesses are recorded separately in the tab contents, so they can be displayed in the correct bucket. BUG=45230 TEST=none Review URL: http://codereview.chromium.org/3053052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55563 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cookies_tree_model_unittest.cc')
-rw-r--r--chrome/browser/cookies_tree_model_unittest.cc110
1 files changed, 90 insertions, 20 deletions
diff --git a/chrome/browser/cookies_tree_model_unittest.cc b/chrome/browser/cookies_tree_model_unittest.cc
index 1f7e457..d91de53 100644
--- a/chrome/browser/cookies_tree_model_unittest.cc
+++ b/chrome/browser/cookies_tree_model_unittest.cc
@@ -57,6 +57,8 @@ class CookiesTreeModelTest : public testing::Test {
new MockBrowsingDataDatabaseHelper(profile_.get());
mock_browsing_data_local_storage_helper_ =
new MockBrowsingDataLocalStorageHelper(profile_.get());
+ mock_browsing_data_session_storage_helper_ =
+ new MockBrowsingDataLocalStorageHelper(profile_.get());
mock_browsing_data_appcache_helper_ =
new MockBrowsingDataAppCacheHelper(profile_.get());
}
@@ -69,22 +71,30 @@ class CookiesTreeModelTest : public testing::Test {
CookiesTreeModel* cookies_model = new CookiesTreeModel(
monster, mock_browsing_data_database_helper_,
mock_browsing_data_local_storage_helper_,
+ mock_browsing_data_session_storage_helper_,
mock_browsing_data_appcache_helper_);
mock_browsing_data_database_helper_->AddDatabaseSamples();
mock_browsing_data_database_helper_->Notify();
mock_browsing_data_local_storage_helper_->AddLocalStorageSamples();
mock_browsing_data_local_storage_helper_->Notify();
+ mock_browsing_data_session_storage_helper_->AddLocalStorageSamples();
+ mock_browsing_data_session_storage_helper_->Notify();
{
- SCOPED_TRACE("Initial State 3 cookies, 2 databases, 2 local storages");
- // 22 because there's the root, then foo1 -> cookies -> a,
+ SCOPED_TRACE("Initial State 3 cookies, 2 databases, 2 local storages, "
+ "2 session storages");
+ // 26 because there's the root, then foo1 -> cookies -> a,
// foo2 -> cookies -> b, foo3 -> cookies -> c,
// dbhost1 -> database -> db1, dbhost2 -> database -> db2,
// host1 -> localstorage -> http://host1:1/,
// host2 -> localstorage -> http://host2:2/.
- EXPECT_EQ(22, cookies_model->GetRoot()->GetTotalNodeCount());
+ // host1 -> sessionstorage -> http://host1:1/,
+ // host2 -> sessionstorage -> http://host2:2/.
+ EXPECT_EQ(26, cookies_model->GetRoot()->GetTotalNodeCount());
EXPECT_EQ("db1,db2", GetDisplayedDatabases(cookies_model));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model));
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model));
}
return cookies_model;
}
@@ -115,6 +125,8 @@ class CookiesTreeModelTest : public testing::Test {
} else {
if (node->GetDetailedInfo().node_type == node_type) {
switch (node_type) {
+ case CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE:
+ return node->GetDetailedInfo().session_storage_info->origin + ",";
case CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE:
return node->GetDetailedInfo().local_storage_info->origin + ",";
case CookieTreeNode::DetailedInfo::TYPE_DATABASE:
@@ -147,6 +159,11 @@ class CookiesTreeModelTest : public testing::Test {
CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE);
}
+ std::string GetSessionStoragesOfChildren(const CookieTreeNode* node) {
+ return GetNodesOfChildren(
+ node, CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE);
+ }
+
// Get the nodes names displayed in the view (if we had one) in the order
// they are displayed, as a comma seperated string.
// Ex: EXPECT_STREQ("X,Y", GetDisplayedNodes(cookies_view, type).c_str());
@@ -175,6 +192,11 @@ class CookiesTreeModelTest : public testing::Test {
CookieTreeNode::DetailedInfo::TYPE_LOCAL_STORAGE);
}
+ std::string GetDisplayedSessionStorages(CookiesTreeModel* cookies_model) {
+ return GetDisplayedNodes(
+ cookies_model, CookieTreeNode::DetailedInfo::TYPE_SESSION_STORAGE);
+ }
+
std::string GetDisplayedAppCaches(CookiesTreeModel* cookies_model) {
return GetDisplayedNodes(cookies_model,
CookieTreeNode::DetailedInfo::TYPE_APPCACHE);
@@ -199,6 +221,8 @@ class CookiesTreeModelTest : public testing::Test {
mock_browsing_data_database_helper_;
scoped_refptr<MockBrowsingDataLocalStorageHelper>
mock_browsing_data_local_storage_helper_;
+ scoped_refptr<MockBrowsingDataLocalStorageHelper>
+ mock_browsing_data_session_storage_helper_;
scoped_refptr<MockBrowsingDataAppCacheHelper>
mock_browsing_data_appcache_helper_;
};
@@ -217,10 +241,13 @@ TEST_F(CookiesTreeModelTest, RemoveAll) {
GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
}
mock_browsing_data_database_helper_->Reset();
mock_browsing_data_local_storage_helper_->Reset();
+ mock_browsing_data_session_storage_helper_->Reset();
cookies_model->DeleteAllStoredObjects();
@@ -233,6 +260,7 @@ TEST_F(CookiesTreeModelTest, RemoveAll) {
GetDisplayedCookies(cookies_model.get()));
EXPECT_TRUE(mock_browsing_data_database_helper_->AllDeleted());
EXPECT_TRUE(mock_browsing_data_local_storage_helper_->AllDeleted());
+ EXPECT_FALSE(mock_browsing_data_session_storage_helper_->AllDeleted());
}
}
@@ -249,7 +277,9 @@ TEST_F(CookiesTreeModelTest, Remove) {
EXPECT_EQ("db1,db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(19, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(23, cookies_model->GetRoot()->GetTotalNodeCount());
}
DeleteStoredObjects(cookies_model->GetRoot()->GetChild(2));
@@ -260,7 +290,9 @@ TEST_F(CookiesTreeModelTest, Remove) {
EXPECT_EQ("db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(16, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(20, cookies_model->GetRoot()->GetTotalNodeCount());
}
DeleteStoredObjects(cookies_model->GetRoot()->GetChild(3));
@@ -271,7 +303,9 @@ TEST_F(CookiesTreeModelTest, Remove) {
EXPECT_EQ("db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(13, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(15, cookies_model->GetRoot()->GetTotalNodeCount());
}
}
@@ -291,10 +325,12 @@ TEST_F(CookiesTreeModelTest, RemoveCookiesNode) {
// dbhost1 -> database -> db1, dbhost2 -> database -> db2,
// host1 -> localstorage -> http://host1:1/,
// host2 -> localstorage -> http://host2:2/.
- EXPECT_EQ(20, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ(24, cookies_model->GetRoot()->GetTotalNodeCount());
EXPECT_EQ("db1,db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
}
DeleteStoredObjects(cookies_model->GetRoot()->GetChild(3)->GetChild(0));
@@ -305,7 +341,9 @@ TEST_F(CookiesTreeModelTest, RemoveCookiesNode) {
EXPECT_EQ("db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(18, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(22, cookies_model->GetRoot()->GetTotalNodeCount());
}
DeleteStoredObjects(cookies_model->GetRoot()->GetChild(5)->GetChild(0));
@@ -316,7 +354,9 @@ TEST_F(CookiesTreeModelTest, RemoveCookiesNode) {
EXPECT_EQ("db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(16, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(20, cookies_model->GetRoot()->GetTotalNodeCount());
}
}
@@ -333,13 +373,17 @@ TEST_F(CookiesTreeModelTest, RemoveCookieNode) {
EXPECT_EQ("db1,db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- // 20 because in this case, the origin remains, although the COOKIES
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ // 24 because in this case, the origin remains, although the COOKIES
// node beneath it has been deleted. So, we have
// root -> foo1 -> cookies -> a, foo2, foo3 -> cookies -> c
// dbhost1 -> database -> db1, dbhost2 -> database -> db2,
// host1 -> localstorage -> http://host1:1/,
// host2 -> localstorage -> http://host2:2/.
- EXPECT_EQ(20, cookies_model->GetRoot()->GetTotalNodeCount());
+ // host1 -> sessionstorage -> http://host1:1/,
+ // host2 -> sessionstorage -> http://host2:2/.
+ EXPECT_EQ(24, cookies_model->GetRoot()->GetTotalNodeCount());
}
DeleteStoredObjects(cookies_model->GetRoot()->GetChild(3)->GetChild(0));
@@ -350,7 +394,9 @@ TEST_F(CookiesTreeModelTest, RemoveCookieNode) {
EXPECT_EQ("db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(18, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(22, cookies_model->GetRoot()->GetTotalNodeCount());
}
DeleteStoredObjects(cookies_model->GetRoot()->GetChild(5)->GetChild(0));
@@ -361,7 +407,9 @@ TEST_F(CookiesTreeModelTest, RemoveCookieNode) {
EXPECT_EQ("db2", GetDisplayedDatabases(cookies_model.get()));
EXPECT_EQ("http://host2:2/",
GetDisplayedLocalStorages(cookies_model.get()));
- EXPECT_EQ(16, cookies_model->GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(cookies_model.get()));
+ EXPECT_EQ(20, cookies_model->GetRoot()->GetTotalNodeCount());
}
}
@@ -374,25 +422,32 @@ TEST_F(CookiesTreeModelTest, RemoveSingleCookieNode) {
CookiesTreeModel cookies_model(monster,
mock_browsing_data_database_helper_,
mock_browsing_data_local_storage_helper_,
+ mock_browsing_data_session_storage_helper_,
mock_browsing_data_appcache_helper_);
mock_browsing_data_database_helper_->AddDatabaseSamples();
mock_browsing_data_database_helper_->Notify();
mock_browsing_data_local_storage_helper_->AddLocalStorageSamples();
mock_browsing_data_local_storage_helper_->Notify();
+ mock_browsing_data_session_storage_helper_->AddLocalStorageSamples();
+ mock_browsing_data_session_storage_helper_->Notify();
{
SCOPED_TRACE("Initial State 4 cookies, 2 databases, 2 local storages");
- // 23 because there's the root, then foo1 -> cookies -> a,
+ // 27 because there's the root, then foo1 -> cookies -> a,
// foo2 -> cookies -> b, foo3 -> cookies -> c,d
// dbhost1 -> database -> db1, dbhost2 -> database -> db2,
// host1 -> localstorage -> http://host1:1/,
// host2 -> localstorage -> http://host2:2/.
- EXPECT_EQ(23, cookies_model.GetRoot()->GetTotalNodeCount());
+ // host1 -> sessionstorage -> http://host1:1/,
+ // host2 -> sessionstorage -> http://host2:2/.
+ EXPECT_EQ(27, cookies_model.GetRoot()->GetTotalNodeCount());
EXPECT_STREQ("A,B,C,D", GetMonsterCookies(monster).c_str());
EXPECT_STREQ("A,B,C,D", GetDisplayedCookies(&cookies_model).c_str());
EXPECT_EQ("db1,db2", GetDisplayedDatabases(&cookies_model));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(&cookies_model));
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(&cookies_model));
}
DeleteStoredObjects(cookies_model.GetRoot()->GetChild(2));
{
@@ -402,7 +457,9 @@ TEST_F(CookiesTreeModelTest, RemoveSingleCookieNode) {
EXPECT_EQ("db1,db2", GetDisplayedDatabases(&cookies_model));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(&cookies_model));
- EXPECT_EQ(19, cookies_model.GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(&cookies_model));
+ EXPECT_EQ(23, cookies_model.GetRoot()->GetTotalNodeCount());
}
}
@@ -416,25 +473,33 @@ TEST_F(CookiesTreeModelTest, RemoveSingleCookieNodeOf3) {
CookiesTreeModel cookies_model(monster,
mock_browsing_data_database_helper_,
mock_browsing_data_local_storage_helper_,
+ mock_browsing_data_session_storage_helper_,
mock_browsing_data_appcache_helper_);
mock_browsing_data_database_helper_->AddDatabaseSamples();
mock_browsing_data_database_helper_->Notify();
mock_browsing_data_local_storage_helper_->AddLocalStorageSamples();
mock_browsing_data_local_storage_helper_->Notify();
+ mock_browsing_data_session_storage_helper_->AddLocalStorageSamples();
+ mock_browsing_data_session_storage_helper_->Notify();
{
- SCOPED_TRACE("Initial State 5 cookies, 2 databases, 2 local storages");
- // 24 because there's the root, then foo1 -> cookies -> a,
+ SCOPED_TRACE("Initial State 5 cookies, 2 databases, 2 local storages, "
+ "2 session storages");
+ // 28 because there's the root, then foo1 -> cookies -> a,
// foo2 -> cookies -> b, foo3 -> cookies -> c,d,e
// dbhost1 -> database -> db1, dbhost2 -> database -> db2,
// host1 -> localstorage -> http://host1:1/,
// host2 -> localstorage -> http://host2:2/.
- EXPECT_EQ(24, cookies_model.GetRoot()->GetTotalNodeCount());
+ // host1 -> sessionstorage -> http://host1:1/,
+ // host2 -> sessionstorage -> http://host2:2/.
+ EXPECT_EQ(28, cookies_model.GetRoot()->GetTotalNodeCount());
EXPECT_STREQ("A,B,C,D,E", GetMonsterCookies(monster).c_str());
EXPECT_STREQ("A,B,C,D,E", GetDisplayedCookies(&cookies_model).c_str());
EXPECT_EQ("db1,db2", GetDisplayedDatabases(&cookies_model));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(&cookies_model));
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(&cookies_model));
}
DeleteStoredObjects(cookies_model.GetRoot()->GetChild(2)->GetChild(0)->
GetChild(1));
@@ -442,10 +507,12 @@ TEST_F(CookiesTreeModelTest, RemoveSingleCookieNodeOf3) {
SCOPED_TRACE("Middle cookie in third origin removed");
EXPECT_STREQ("A,B,C,E", GetMonsterCookies(monster).c_str());
EXPECT_STREQ("A,B,C,E", GetDisplayedCookies(&cookies_model).c_str());
- EXPECT_EQ(23, cookies_model.GetRoot()->GetTotalNodeCount());
+ EXPECT_EQ(27, cookies_model.GetRoot()->GetTotalNodeCount());
EXPECT_EQ("db1,db2", GetDisplayedDatabases(&cookies_model));
EXPECT_EQ("http://host1:1/,http://host2:2/",
GetDisplayedLocalStorages(&cookies_model));
+ EXPECT_EQ("http://host1:1/,http://host2:2/",
+ GetDisplayedSessionStorages(&cookies_model));
}
}
@@ -459,6 +526,7 @@ TEST_F(CookiesTreeModelTest, RemoveSecondOrigin) {
CookiesTreeModel cookies_model(monster,
mock_browsing_data_database_helper_,
mock_browsing_data_local_storage_helper_,
+ mock_browsing_data_session_storage_helper_,
mock_browsing_data_appcache_helper_);
{
SCOPED_TRACE("Initial State 5 cookies");
@@ -493,6 +561,7 @@ TEST_F(CookiesTreeModelTest, OriginOrdering) {
CookiesTreeModel cookies_model(monster,
new MockBrowsingDataDatabaseHelper(profile_.get()),
new MockBrowsingDataLocalStorageHelper(profile_.get()),
+ new MockBrowsingDataLocalStorageHelper(profile_.get()),
new MockBrowsingDataAppCacheHelper(profile_.get()));
{
@@ -519,6 +588,7 @@ TEST_F(CookiesTreeModelTest, ContentSettings) {
CookiesTreeModel cookies_model(monster,
new MockBrowsingDataDatabaseHelper(profile_.get()),
new MockBrowsingDataLocalStorageHelper(profile_.get()),
+ new MockBrowsingDataLocalStorageHelper(profile_.get()),
new MockBrowsingDataAppCacheHelper(profile_.get()));
TestingProfile profile;