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

Side by Side Diff: components/leveldb/leveldb_service_unittest.cc

Issue 1928073002: mojo leveldb: Reenable tests which can be moved to the in-memory db. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Reupload for another set of tryjobs. Created 4 years, 7 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/macros.h" 5 #include "base/macros.h"
6 #include "components/filesystem/public/interfaces/directory.mojom.h" 6 #include "components/filesystem/public/interfaces/directory.mojom.h"
7 #include "components/filesystem/public/interfaces/file_system.mojom.h" 7 #include "components/filesystem/public/interfaces/file_system.mojom.h"
8 #include "components/filesystem/public/interfaces/types.mojom.h" 8 #include "components/filesystem/public/interfaces/types.mojom.h"
9 #include "components/leveldb/public/interfaces/leveldb.mojom.h" 9 #include "components/leveldb/public/interfaces/leveldb.mojom.h"
10 #include "mojo/common/common_type_converters.h" 10 #include "mojo/common/common_type_converters.h"
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 filesystem::FileSystemPtr& files() { return files_; } 51 filesystem::FileSystemPtr& files() { return files_; }
52 LevelDBServicePtr& leveldb() { return leveldb_; } 52 LevelDBServicePtr& leveldb() { return leveldb_; }
53 53
54 private: 54 private:
55 filesystem::FileSystemPtr files_; 55 filesystem::FileSystemPtr files_;
56 LevelDBServicePtr leveldb_; 56 LevelDBServicePtr leveldb_;
57 57
58 DISALLOW_COPY_AND_ASSIGN(LevelDBServiceTest); 58 DISALLOW_COPY_AND_ASSIGN(LevelDBServiceTest);
59 }; 59 };
60 60
61 // TODO(crbug.com/602820) Test is flaky. 61 TEST_F(LevelDBServiceTest, Basic) {
62 #if defined(OS_LINUX) || defined(OS_WIN)
63 #define MAYBE_Basic DISABLED_Basic
64 #else
65 #define MAYBE_Basic Basic
66 #endif
67 TEST_F(LevelDBServiceTest, MAYBE_Basic) {
68 filesystem::DirectoryPtr directory;
69 GetUserDataDir(&directory);
70
71 DatabaseError error; 62 DatabaseError error;
72 LevelDBDatabasePtr database; 63 LevelDBDatabasePtr database;
73 leveldb()->Open(std::move(directory), "test", GetProxy(&database), 64 leveldb()->OpenInMemory(GetProxy(&database), Capture(&error));
74 Capture(&error));
75 ASSERT_TRUE(leveldb().WaitForIncomingResponse()); 65 ASSERT_TRUE(leveldb().WaitForIncomingResponse());
76 EXPECT_EQ(DatabaseError::OK, error); 66 EXPECT_EQ(DatabaseError::OK, error);
77 67
78 // Write a key to the database. 68 // Write a key to the database.
79 error = DatabaseError::INVALID_ARGUMENT; 69 error = DatabaseError::INVALID_ARGUMENT;
80 database->Put(mojo::Array<uint8_t>::From(std::string("key")), 70 database->Put(mojo::Array<uint8_t>::From(std::string("key")),
81 mojo::Array<uint8_t>::From(std::string("value")), 71 mojo::Array<uint8_t>::From(std::string("value")),
82 Capture(&error)); 72 Capture(&error));
83 ASSERT_TRUE(database.WaitForIncomingResponse()); 73 ASSERT_TRUE(database.WaitForIncomingResponse());
84 EXPECT_EQ(DatabaseError::OK, error); 74 EXPECT_EQ(DatabaseError::OK, error);
(...skipping 17 matching lines...) Expand all
102 // Read the key back from the database. 92 // Read the key back from the database.
103 error = DatabaseError::INVALID_ARGUMENT; 93 error = DatabaseError::INVALID_ARGUMENT;
104 value.SetToEmpty(); 94 value.SetToEmpty();
105 database->Get(mojo::Array<uint8_t>::From(std::string("key")), 95 database->Get(mojo::Array<uint8_t>::From(std::string("key")),
106 Capture(&error, &value)); 96 Capture(&error, &value));
107 ASSERT_TRUE(database.WaitForIncomingResponse()); 97 ASSERT_TRUE(database.WaitForIncomingResponse());
108 EXPECT_EQ(DatabaseError::NOT_FOUND, error); 98 EXPECT_EQ(DatabaseError::NOT_FOUND, error);
109 EXPECT_EQ("", value.To<std::string>()); 99 EXPECT_EQ("", value.To<std::string>());
110 } 100 }
111 101
112 // TODO(crbug.com/602820) Test is flaky. 102 TEST_F(LevelDBServiceTest, WriteBatch) {
113 #if defined(OS_LINUX) || defined(OS_WIN)
114 #define MAYBE_WriteBatch DISABLED_WriteBatch
115 #else
116 #define MAYBE_WriteBatch WriteBatch
117 #endif
118 TEST_F(LevelDBServiceTest, MAYBE_WriteBatch) {
119 DatabaseError error; 103 DatabaseError error;
120 LevelDBDatabasePtr database; 104 LevelDBDatabasePtr database;
121 leveldb()->OpenInMemory(GetProxy(&database), Capture(&error)); 105 leveldb()->OpenInMemory(GetProxy(&database), Capture(&error));
122 ASSERT_TRUE(leveldb().WaitForIncomingResponse()); 106 ASSERT_TRUE(leveldb().WaitForIncomingResponse());
123 EXPECT_EQ(DatabaseError::OK, error); 107 EXPECT_EQ(DatabaseError::OK, error);
124 108
125 // Write a key to the database. 109 // Write a key to the database.
126 database->Put(mojo::Array<uint8_t>::From(std::string("key")), 110 database->Put(mojo::Array<uint8_t>::From(std::string("key")),
127 mojo::Array<uint8_t>::From(std::string("value")), 111 mojo::Array<uint8_t>::From(std::string("value")),
128 Capture(&error)); 112 Capture(&error));
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 error = DatabaseError::INVALID_ARGUMENT; 232 error = DatabaseError::INVALID_ARGUMENT;
249 mojo::Array<uint8_t> value; 233 mojo::Array<uint8_t> value;
250 database->Get(mojo::Array<uint8_t>::From(std::string("key")), 234 database->Get(mojo::Array<uint8_t>::From(std::string("key")),
251 Capture(&error, &value)); 235 Capture(&error, &value));
252 ASSERT_TRUE(database.WaitForIncomingResponse()); 236 ASSERT_TRUE(database.WaitForIncomingResponse());
253 EXPECT_EQ(DatabaseError::OK, error); 237 EXPECT_EQ(DatabaseError::OK, error);
254 EXPECT_EQ("value", value.To<std::string>()); 238 EXPECT_EQ("value", value.To<std::string>());
255 } 239 }
256 } 240 }
257 241
258 // TODO(crbug.com/602820) Test is flaky. 242 TEST_F(LevelDBServiceTest, GetSnapshotSimple) {
259 #if defined(OS_LINUX) || defined(OS_WIN)
260 #define MAYBE_GetSnapshotSimple DISABLED_GetSnapshotSimple
261 #else
262 #define MAYBE_GetSnapshotSimple GetSnapshotSimple
263 #endif
264 TEST_F(LevelDBServiceTest, MAYBE_GetSnapshotSimple) {
265 DatabaseError error; 243 DatabaseError error;
266
267 filesystem::DirectoryPtr directory;
268 GetUserDataDir(&directory);
269
270 LevelDBDatabasePtr database; 244 LevelDBDatabasePtr database;
271 leveldb()->Open(std::move(directory), "test", GetProxy(&database), 245 leveldb()->OpenInMemory(GetProxy(&database), Capture(&error));
272 Capture(&error));
273 ASSERT_TRUE(leveldb().WaitForIncomingResponse()); 246 ASSERT_TRUE(leveldb().WaitForIncomingResponse());
274 EXPECT_EQ(DatabaseError::OK, error); 247 EXPECT_EQ(DatabaseError::OK, error);
275 248
276 uint64_t snapshot_id = 0; 249 uint64_t snapshot_id = 0;
277 database->GetSnapshot(Capture(&snapshot_id)); 250 database->GetSnapshot(Capture(&snapshot_id));
278 ASSERT_TRUE(database.WaitForIncomingResponse()); 251 ASSERT_TRUE(database.WaitForIncomingResponse());
279 EXPECT_NE(static_cast<uint64_t>(0), snapshot_id); 252 EXPECT_NE(static_cast<uint64_t>(0), snapshot_id);
280 } 253 }
281 254
282 // TODO(crbug.com/602820) Test is flaky. 255 TEST_F(LevelDBServiceTest, GetFromSnapshots) {
283 #if defined(OS_LINUX) || defined(OS_WIN)
284 #define MAYBE_GetFromSnapshots DISABLED_GetFromSnapshots
285 #else
286 #define MAYBE_GetFromSnapshots GetFromSnapshots
287 #endif
288 TEST_F(LevelDBServiceTest, MAYBE_GetFromSnapshots) {
289 DatabaseError error; 256 DatabaseError error;
290
291 filesystem::DirectoryPtr directory;
292 GetUserDataDir(&directory);
293
294 LevelDBDatabasePtr database; 257 LevelDBDatabasePtr database;
295 leveldb()->Open(std::move(directory), "test", GetProxy(&database), 258 leveldb()->OpenInMemory(GetProxy(&database), Capture(&error));
296 Capture(&error));
297 ASSERT_TRUE(leveldb().WaitForIncomingResponse()); 259 ASSERT_TRUE(leveldb().WaitForIncomingResponse());
298 EXPECT_EQ(DatabaseError::OK, error); 260 EXPECT_EQ(DatabaseError::OK, error);
299 261
300 // Write a key to the database. 262 // Write a key to the database.
301 error = DatabaseError::INVALID_ARGUMENT; 263 error = DatabaseError::INVALID_ARGUMENT;
302 database->Put(mojo::Array<uint8_t>::From(std::string("key")), 264 database->Put(mojo::Array<uint8_t>::From(std::string("key")),
303 mojo::Array<uint8_t>::From(std::string("value")), 265 mojo::Array<uint8_t>::From(std::string("value")),
304 Capture(&error)); 266 Capture(&error));
305 ASSERT_TRUE(database.WaitForIncomingResponse()); 267 ASSERT_TRUE(database.WaitForIncomingResponse());
306 EXPECT_EQ(DatabaseError::OK, error); 268 EXPECT_EQ(DatabaseError::OK, error);
(...skipping 25 matching lines...) Expand all
332 value.SetToEmpty(); 294 value.SetToEmpty();
333 database->GetFromSnapshot( 295 database->GetFromSnapshot(
334 key_value_snapshot, 296 key_value_snapshot,
335 mojo::Array<uint8_t>::From(std::string("key")), 297 mojo::Array<uint8_t>::From(std::string("key")),
336 Capture(&error, &value)); 298 Capture(&error, &value));
337 ASSERT_TRUE(database.WaitForIncomingResponse()); 299 ASSERT_TRUE(database.WaitForIncomingResponse());
338 EXPECT_EQ(DatabaseError::OK, error); 300 EXPECT_EQ(DatabaseError::OK, error);
339 EXPECT_EQ("value", value.To<std::string>()); 301 EXPECT_EQ("value", value.To<std::string>());
340 } 302 }
341 303
342 // TODO(crbug.com/602820) Test is flaky. 304 TEST_F(LevelDBServiceTest, InvalidArgumentOnInvalidSnapshot) {
343 #if defined(OS_LINUX) || defined(OS_WIN)
344 #define MAYBE_InvalidArgumentOnInvalidSnapshot DISABLED_InvalidArgumentOnInvalid Snapshot
345 #else
346 #define MAYBE_InvalidArgumentOnInvalidSnapshot InvalidArgumentOnInvalidSnapshot
347 #endif
348 TEST_F(LevelDBServiceTest, MAYBE_InvalidArgumentOnInvalidSnapshot) {
349 filesystem::DirectoryPtr directory;
350 GetUserDataDir(&directory);
351
352 LevelDBDatabasePtr database; 305 LevelDBDatabasePtr database;
353 DatabaseError error = DatabaseError::INVALID_ARGUMENT; 306 DatabaseError error = DatabaseError::INVALID_ARGUMENT;
354 leveldb()->Open(std::move(directory), "test", GetProxy(&database), 307 leveldb()->OpenInMemory(GetProxy(&database), Capture(&error));
355 Capture(&error));
356 ASSERT_TRUE(leveldb().WaitForIncomingResponse()); 308 ASSERT_TRUE(leveldb().WaitForIncomingResponse());
357 EXPECT_EQ(DatabaseError::OK, error); 309 EXPECT_EQ(DatabaseError::OK, error);
358 310
359 uint64_t invalid_snapshot = 8; 311 uint64_t invalid_snapshot = 8;
360 312
361 error = DatabaseError::OK; 313 error = DatabaseError::OK;
362 mojo::Array<uint8_t> value; 314 mojo::Array<uint8_t> value;
363 database->GetFromSnapshot( 315 database->GetFromSnapshot(
364 invalid_snapshot, 316 invalid_snapshot,
365 mojo::Array<uint8_t>::From(std::string("key")), 317 mojo::Array<uint8_t>::From(std::string("key")),
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
538 key_values.SetToEmpty(); 490 key_values.SetToEmpty();
539 database->GetPrefixed(mojo::Array<uint8_t>::From(prefix), 491 database->GetPrefixed(mojo::Array<uint8_t>::From(prefix),
540 Capture(&error, &key_values)); 492 Capture(&error, &key_values));
541 ASSERT_TRUE(database.WaitForIncomingResponse()); 493 ASSERT_TRUE(database.WaitForIncomingResponse());
542 EXPECT_EQ(DatabaseError::OK, error); 494 EXPECT_EQ(DatabaseError::OK, error);
543 EXPECT_TRUE(key_values.empty()); 495 EXPECT_TRUE(key_values.empty());
544 } 496 }
545 497
546 } // namespace 498 } // namespace
547 } // namespace leveldb 499 } // namespace leveldb
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698