Index: chrome/browser/browsing_data/browsing_data_indexed_db_helper_unittest.cc |
diff --git a/chrome/browser/browsing_data/browsing_data_indexed_db_helper_unittest.cc b/chrome/browser/browsing_data/browsing_data_indexed_db_helper_unittest.cc |
index fc59ce6820d9b03feea5cc07e85425282c356672..387341438302e23317f6c4ee43bbdac770f813ec 100644 |
--- a/chrome/browser/browsing_data/browsing_data_indexed_db_helper_unittest.cc |
+++ b/chrome/browser/browsing_data/browsing_data_indexed_db_helper_unittest.cc |
@@ -2,22 +2,41 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include "testing/gtest/include/gtest/gtest.h" |
+#include "chrome/browser/browsing_data/browsing_data_indexed_db_helper.h" |
+#include "base/message_loop/message_loop_proxy.h" |
#include "base/strings/utf_string_conversions.h" |
-#include "chrome/browser/browsing_data/browsing_data_indexed_db_helper.h" |
#include "chrome/test/base/testing_profile.h" |
+#include "content/public/browser/browser_context.h" |
+#include "content/public/browser/storage_partition.h" |
+#include "content/public/test/test_browser_thread_bundle.h" |
+#include "testing/gtest/include/gtest/gtest.h" |
namespace { |
-typedef testing::Test CannedBrowsingDataIndexedDBHelperTest; |
+class CannedBrowsingDataIndexedDBHelperTest : public testing::Test { |
+ public: |
+ virtual void SetUp() OVERRIDE { |
+ IndexedDBContext()->SetTaskRunnerForTesting( |
+ base::MessageLoopProxy::current().get()); |
+ } |
+ |
+ content::IndexedDBContext* IndexedDBContext() { |
+ return content::BrowserContext::GetDefaultStoragePartition(&profile_)-> |
+ GetIndexedDBContext(); |
+ } |
+ |
+ private: |
+ content::TestBrowserThreadBundle thread_bundle_; |
+ TestingProfile profile_; |
+}; |
TEST_F(CannedBrowsingDataIndexedDBHelperTest, Empty) { |
const GURL origin("http://host1:1/"); |
const base::string16 description(base::ASCIIToUTF16("description")); |
scoped_refptr<CannedBrowsingDataIndexedDBHelper> helper( |
- new CannedBrowsingDataIndexedDBHelper()); |
+ new CannedBrowsingDataIndexedDBHelper(IndexedDBContext())); |
ASSERT_TRUE(helper->empty()); |
helper->AddIndexedDB(origin, description); |
@@ -26,13 +45,33 @@ TEST_F(CannedBrowsingDataIndexedDBHelperTest, Empty) { |
ASSERT_TRUE(helper->empty()); |
} |
+TEST_F(CannedBrowsingDataIndexedDBHelperTest, Delete) { |
+ const GURL origin1("http://host1:9000"); |
+ const base::string16 db1(base::ASCIIToUTF16("db1")); |
+ |
+ const GURL origin2("http://example.com"); |
+ const base::string16 db2(base::ASCIIToUTF16("db2")); |
+ const base::string16 db3(base::ASCIIToUTF16("db3")); |
+ |
+ scoped_refptr<CannedBrowsingDataIndexedDBHelper> helper( |
+ new CannedBrowsingDataIndexedDBHelper(IndexedDBContext())); |
+ |
+ EXPECT_TRUE(helper->empty()); |
+ helper->AddIndexedDB(origin1, db1); |
+ helper->AddIndexedDB(origin2, db2); |
+ helper->AddIndexedDB(origin2, db3); |
+ EXPECT_EQ(3u, helper->GetIndexedDBCount()); |
+ helper->DeleteIndexedDB(origin2); |
+ EXPECT_EQ(1u, helper->GetIndexedDBCount()); |
+} |
+ |
TEST_F(CannedBrowsingDataIndexedDBHelperTest, IgnoreExtensionsAndDevTools) { |
const GURL origin1("chrome-extension://abcdefghijklmnopqrstuvwxyz/"); |
const GURL origin2("chrome-devtools://abcdefghijklmnopqrstuvwxyz/"); |
const base::string16 description(base::ASCIIToUTF16("description")); |
scoped_refptr<CannedBrowsingDataIndexedDBHelper> helper( |
- new CannedBrowsingDataIndexedDBHelper()); |
+ new CannedBrowsingDataIndexedDBHelper(IndexedDBContext())); |
ASSERT_TRUE(helper->empty()); |
helper->AddIndexedDB(origin1, description); |