diff options
Diffstat (limited to 'chromium/content/browser/dom_storage/session_storage_area_impl_unittest.cc')
-rw-r--r-- | chromium/content/browser/dom_storage/session_storage_area_impl_unittest.cc | 46 |
1 files changed, 15 insertions, 31 deletions
diff --git a/chromium/content/browser/dom_storage/session_storage_area_impl_unittest.cc b/chromium/content/browser/dom_storage/session_storage_area_impl_unittest.cc index f259db91016..e7058d9a54f 100644 --- a/chromium/content/browser/dom_storage/session_storage_area_impl_unittest.cc +++ b/chromium/content/browser/dom_storage/session_storage_area_impl_unittest.cc @@ -16,14 +16,13 @@ #include "base/test/bind_test_util.h" #include "base/test/task_environment.h" #include "base/threading/thread.h" -#include "components/services/leveldb/leveldb_service_impl.h" +#include "components/services/leveldb/leveldb_database_impl.h" #include "components/services/leveldb/public/cpp/util.h" #include "components/services/leveldb/public/mojom/leveldb.mojom.h" #include "content/browser/dom_storage/session_storage_data_map.h" #include "content/browser/dom_storage/session_storage_metadata.h" #include "content/browser/dom_storage/test/storage_area_test_util.h" #include "content/public/test/browser_task_environment.h" -#include "content/test/fake_leveldb_database.h" #include "content/test/gmock_util.h" #include "mojo/public/cpp/bindings/associated_receiver.h" #include "mojo/public/cpp/bindings/associated_remote.h" @@ -35,21 +34,14 @@ #include "url/gurl.h" namespace content { + namespace { + using leveldb::StdStringToUint8Vector; using leveldb::Uint8VectorToStdString; -using leveldb::mojom::DatabaseError; - -template <typename Interface, typename Impl> -void CreateSelfOwnedreceiverOnTaskRunner( - scoped_refptr<base::SequencedTaskRunner> runner, - mojo::PendingReceiver<Interface> pending_receiver, - std::unique_ptr<Impl> interface) { - runner->PostTask( - FROM_HERE, - base::BindOnce( - base::IgnoreResult(&mojo::MakeSelfOwnedReceiver<Interface, Impl>), - std::move(interface), std::move(pending_receiver), runner)); + +MATCHER(OKStatus, "Equality matcher for type OK leveldb::Status") { + return arg.ok(); } class MockListener : public SessionStorageDataMap::Listener { @@ -60,7 +52,7 @@ class MockListener : public SessionStorageDataMap::Listener { void(const std::vector<uint8_t>& map_id, SessionStorageDataMap* map)); MOCK_METHOD1(OnDataMapDestruction, void(const std::vector<uint8_t>& map_id)); - MOCK_METHOD1(OnCommitResult, void(DatabaseError error)); + MOCK_METHOD1(OnCommitResult, void(leveldb::Status)); }; class SessionStorageAreaImplTest : public testing::Test { @@ -70,17 +62,10 @@ class SessionStorageAreaImplTest : public testing::Test { test_namespace_id2_(base::GenerateGUID()), test_origin1_(url::Origin::Create(GURL("https://host1.com:1/"))), test_origin2_(url::Origin::Create(GURL("https://host2.com:2/"))) { - auto file_runner = - base::CreateSequencedTaskRunner({base::ThreadPool(), base::MayBlock()}); - CreateSelfOwnedreceiverOnTaskRunner( - base::CreateSequencedTaskRunner({base::ThreadPool(), base::MayBlock()}), - leveldb_service_.BindNewPipeAndPassReceiver(), - std::make_unique<leveldb::LevelDBServiceImpl>(std::move(file_runner))); - - leveldb_service_->OpenInMemory( + leveldb_database_ = leveldb::LevelDBDatabaseImpl::OpenInMemory( base::nullopt, "SessionStorageAreaImplTestDatabase", - leveldb_database_.BindNewEndpointAndPassReceiver(), base::DoNothing()); - + base::CreateSequencedTaskRunner({base::ThreadPool(), base::MayBlock()}), + base::DoNothing()); leveldb_database_->Put(StdStringToUint8Vector("map-0-key1"), StdStringToUint8Vector("data1"), base::DoNothing()); @@ -115,8 +100,7 @@ class SessionStorageAreaImplTest : public testing::Test { const std::string test_namespace_id2_; const url::Origin test_origin1_; const url::Origin test_origin2_; - mojo::Remote<leveldb::mojom::LevelDBService> leveldb_service_; - mojo::AssociatedRemote<leveldb::mojom::LevelDBDatabase> leveldb_database_; + std::unique_ptr<leveldb::LevelDBDatabaseImpl> leveldb_database_; SessionStorageMetadata metadata_; testing::StrictMock<MockListener> listener_; @@ -250,7 +234,7 @@ TEST_F(SessionStorageAreaImplTest, Cloning) { EXPECT_CALL(listener_, OnDataMapCreation(StdStringToUint8Vector("1"), testing::_)) .Times(1); - EXPECT_CALL(listener_, OnCommitResult(DatabaseError::OK)) + EXPECT_CALL(listener_, OnCommitResult(OKStatus())) .Times(testing::AnyNumber()); EXPECT_TRUE(test::PutSync(ss_leveldb2.get(), StdStringToUint8Vector("key2"), StdStringToUint8Vector("data2"), base::nullopt, @@ -370,7 +354,7 @@ TEST_F(SessionStorageAreaImplTest, DeleteAllOnShared) { .Times(1); // There should be no commits, as we don't actually have to change any data. // |ss_leveldb_impl1| should just switch to a new, empty map. - EXPECT_CALL(listener_, OnCommitResult(DatabaseError::OK)).Times(0); + EXPECT_CALL(listener_, OnCommitResult(OKStatus())).Times(0); EXPECT_TRUE(test::DeleteAllSync(ss_leveldb1.get(), "source")); // The maps were forked on the above call. @@ -400,7 +384,7 @@ TEST_F(SessionStorageAreaImplTest, DeleteAllWithoutBinding) { GetRegisterNewAreaMapCallback()); base::RunLoop loop; - EXPECT_CALL(listener_, OnCommitResult(DatabaseError::OK)) + EXPECT_CALL(listener_, OnCommitResult(OKStatus())) .WillOnce(base::test::RunClosure(loop.QuitClosure())); EXPECT_TRUE(test::DeleteAllSync(ss_leveldb_impl1.get(), "source")); ss_leveldb_impl1->data_map()->storage_area()->ScheduleImmediateCommit(); @@ -446,7 +430,7 @@ TEST_F(SessionStorageAreaImplTest, DeleteAllWithoutBindingOnShared) { .Times(1); // There should be no commits, as we don't actually have to change any data. // |ss_leveldb_impl1| should just switch to a new, empty map. - EXPECT_CALL(listener_, OnCommitResult(DatabaseError::OK)).Times(0); + EXPECT_CALL(listener_, OnCommitResult(OKStatus())).Times(0); EXPECT_TRUE(test::DeleteAllSync(ss_leveldb_impl1.get(), "source")); // The maps were forked on the above call. |