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

Unified Diff: chrome/browser/browsing_data_database_helper_browsertest.cc

Issue 6246105: Only invoke WebKit methods in browsing data helpers on the WEBKIT thread. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: updates Created 9 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/browsing_data_database_helper_browsertest.cc
diff --git a/chrome/browser/browsing_data_database_helper_browsertest.cc b/chrome/browser/browsing_data_database_helper_browsertest.cc
index 82b47fb1f81c1b0a9044dc3060baf7a10e16543e..9d2c85f212274cad1873931070200252a592adfc 100644
--- a/chrome/browser/browsing_data_database_helper_browsertest.cc
+++ b/chrome/browser/browsing_data_database_helper_browsertest.cc
@@ -1,18 +1,23 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 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 "base/file_util.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/browsing_data_database_helper.h"
+#include "chrome/browser/browsing_data_helper_browsertest.h"
#include "chrome/browser/browser_thread.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";
+namespace {
bulach 2011/02/22 22:34:01 I think there's a \n here and when closing the nam
+typedef BrowsingDataHelperCallback<BrowsingDataDatabaseHelper::DatabaseInfo>
+ TestCompletionCallback;
-static const char kTestIdentifierExtension[] =
+const char kTestIdentifier1[] = "http_www.google.com_0";
+
+const char kTestIdentifierExtension[] =
"chrome-extension_behllobkkfkfnphdnhnkndlbkcpglgmj_0";
class BrowsingDataDatabaseHelperTest : public InProcessBrowserTest {
@@ -81,3 +86,57 @@ IN_PROC_BROWSER_TEST_F(BrowsingDataDatabaseHelperTest, FetchData) {
// Blocks until StopTestOnCallback::Callback is notified.
ui_test_utils::RunMessageLoop();
}
+
+IN_PROC_BROWSER_TEST_F(BrowsingDataDatabaseHelperTest, CannedAddDatabase) {
+ const GURL origin1("http://host1:1/");
+ const GURL origin2("http://host2:1/");
+ const char origin_str1[] = "http_host1_1";
+ const char origin_str2[] = "http_host2_1";
+ const char db1[] = "db1";
+ const char db2[] = "db2";
+ const char db3[] = "db3";
+
+ scoped_refptr<CannedBrowsingDataDatabaseHelper> helper(
+ new CannedBrowsingDataDatabaseHelper(&testing_profile_));
+ helper->AddDatabase(origin1, db1, "");
+ helper->AddDatabase(origin1, db2, "");
+ helper->AddDatabase(origin2, db3, "");
+
+ TestCompletionCallback callback;
+ helper->StartFetching(
+ NewCallback(&callback, &TestCompletionCallback::callback));
+
+ std::vector<BrowsingDataDatabaseHelper::DatabaseInfo> result =
+ callback.result();
+
+ ASSERT_EQ(3u, result.size());
+ EXPECT_STREQ(origin_str1, result[0].origin_identifier.c_str());
+ EXPECT_STREQ(db1, result[0].database_name.c_str());
+ EXPECT_STREQ(origin_str1, result[1].origin_identifier.c_str());
+ EXPECT_STREQ(db2, result[1].database_name.c_str());
+ EXPECT_STREQ(origin_str2, result[2].origin_identifier.c_str());
+ EXPECT_STREQ(db3, result[2].database_name.c_str());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowsingDataDatabaseHelperTest, CannedUnique) {
+ const GURL origin("http://host1:1/");
+ const char origin_str[] = "http_host1_1";
+ const char db[] = "db1";
+
+ scoped_refptr<CannedBrowsingDataDatabaseHelper> helper(
+ new CannedBrowsingDataDatabaseHelper(&testing_profile_));
+ helper->AddDatabase(origin, db, "");
+ helper->AddDatabase(origin, db, "");
+
+ TestCompletionCallback callback;
+ helper->StartFetching(
+ NewCallback(&callback, &TestCompletionCallback::callback));
+
+ std::vector<BrowsingDataDatabaseHelper::DatabaseInfo> result =
+ callback.result();
+
+ ASSERT_EQ(1u, result.size());
+ EXPECT_STREQ(origin_str, result[0].origin_identifier.c_str());
+ EXPECT_STREQ(db, result[0].database_name.c_str());
+}
bulach 2011/02/22 22:34:01 ditto
+} // namespace

Powered by Google App Engine
This is Rietveld 408576698