summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browsing_data_database_helper_unittest.cc
diff options
context:
space:
mode:
authorjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-29 07:21:13 +0000
committerjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-29 07:21:13 +0000
commitf58330c4b964edd22ef02325390975a013a3f34a (patch)
tree15061bcc0ca596409a7113cde0bffc2b49206a0c /chrome/browser/browsing_data_database_helper_unittest.cc
parent82d76938133d016ac5d9cc4b56d603f96876e7f3 (diff)
downloadchromium_src-f58330c4b964edd22ef02325390975a013a3f34a.zip
chromium_src-f58330c4b964edd22ef02325390975a013a3f34a.tar.gz
chromium_src-f58330c4b964edd22ef02325390975a013a3f34a.tar.bz2
Don't show extension state in cookie tree list.
BUG=38659 TEST=Unit tests in browsing_data_local_storage_helper_unittest.cc and browsing_data_database_helper_unittest.cc Review URL: http://codereview.chromium.org/1405002 Patch from Mattias Nissler. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42935 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browsing_data_database_helper_unittest.cc')
-rw-r--r--chrome/browser/browsing_data_database_helper_unittest.cc80
1 files changed, 80 insertions, 0 deletions
diff --git a/chrome/browser/browsing_data_database_helper_unittest.cc b/chrome/browser/browsing_data_database_helper_unittest.cc
new file mode 100644
index 0000000..19c7c20
--- /dev/null
+++ b/chrome/browser/browsing_data_database_helper_unittest.cc
@@ -0,0 +1,80 @@
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/browsing_data_database_helper.h"
+#include "chrome/test/in_process_browser_test.h"
+#include "chrome/test/testing_profile.h"
+#include "chrome/test/ui_test_utils.h"
+
+static const char kTestIdentifier1[] = "http_www.google.com_0";
+
+static const char kTestIdentifierExtension[] =
+ "chrome-extension_behllobkkfkfnphdnhnkndlbkcpglgmj_0";
+
+class BrowsingDataDatabaseHelperTest : public InProcessBrowserTest {
+ public:
+ virtual void CreateDatabases() {
+ webkit_database::DatabaseTracker* db_tracker =
+ testing_profile_.GetDatabaseTracker();
+ string16 db_name = ASCIIToUTF16("db");
+ string16 description = ASCIIToUTF16("db_description");
+ int64 size;
+ int64 available;
+ string16 identifier1(UTF8ToUTF16(kTestIdentifier1));
+ db_tracker->DatabaseOpened(identifier1, db_name, description, 1, &size,
+ &available);
+ db_tracker->DatabaseClosed(identifier1, db_name);
+ FilePath db_path1 = db_tracker->GetFullDBFilePath(identifier1, db_name);
+ file_util::CreateDirectory(db_path1.DirName());
+ ASSERT_EQ(0, file_util::WriteFile(db_path1, NULL, 0));
+ string16 identifierExtension(UTF8ToUTF16(kTestIdentifierExtension));
+ db_tracker->DatabaseOpened(identifierExtension, db_name, description, 1,
+ &size, &available);
+ db_tracker->DatabaseClosed(identifierExtension, db_name);
+ FilePath db_path2 =
+ db_tracker->GetFullDBFilePath(identifierExtension, db_name);
+ file_util::CreateDirectory(db_path2.DirName());
+ ASSERT_EQ(0, file_util::WriteFile(db_path2, NULL, 0));
+ std::vector<webkit_database::OriginInfo> origins;
+ db_tracker->GetAllOriginsInfo(&origins);
+ ASSERT_EQ(2U, origins.size());
+ }
+
+ protected:
+ TestingProfile testing_profile_;
+};
+
+// Called back by BrowsingDataDatabaseHelper on the UI thread once the database
+// information has been retrieved.
+class StopTestOnCallback {
+ public:
+ explicit StopTestOnCallback(
+ BrowsingDataDatabaseHelper* database_helper)
+ : database_helper_(database_helper) {
+ DCHECK(database_helper_);
+ }
+
+ void Callback(const std::vector<BrowsingDataDatabaseHelper::DatabaseInfo>&
+ database_info_list) {
+ DCHECK(ChromeThread::CurrentlyOn(ChromeThread::UI));
+ ASSERT_EQ(1UL, database_info_list.size());
+ EXPECT_EQ(std::string(kTestIdentifier1),
+ database_info_list.at(0).origin_identifier);
+ MessageLoop::current()->Quit();
+ }
+
+ private:
+ BrowsingDataDatabaseHelper* database_helper_;
+};
+
+IN_PROC_BROWSER_TEST_F(BrowsingDataDatabaseHelperTest, FetchData) {
+ CreateDatabases();
+ scoped_refptr<BrowsingDataDatabaseHelper> database_helper(
+ new BrowsingDataDatabaseHelper(&testing_profile_));
+ StopTestOnCallback stop_test_on_callback(database_helper);
+ database_helper->StartFetching(
+ NewCallback(&stop_test_on_callback, &StopTestOnCallback::Callback));
+ // Blocks until StopTestOnCallback::Callback is notified.
+ ui_test_utils::RunMessageLoop();
+}