aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm
diff options
context:
space:
mode:
authorGravatar Greg Soltis <gsoltis@google.com>2018-03-22 17:31:16 -0700
committerGravatar GitHub <noreply@github.com>2018-03-22 17:31:16 -0700
commit352b790b6e292c0d921ad0231352d767fde53758 (patch)
tree75a8c78fc35f846eb1f763ea3b664d6800850e2b /Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm
parentc1c9fecb6f7e057817afca9f1e32d2abba3ecfe8 (diff)
Switch FSTLevelDBQueryCache to use transactions (#942)
* Start work on leveldb transactions * Style * Working API. Not plumbed in yet * Move files into correct place * Wrangling file locations and associations * Tests pass * Add some comments * style * Fix copyright * Rewrite iterator internals to handle deletion-while-iterating. Also add tests for same * Switch to strings instead of slices * Style * More style fixes * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Response to feedback before updating docs * Style * Add comment * Initialize version_ * Satisfy the linter * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Checkpoint before implementing BatchDescription * Style * Initial plumbing for leveldb local parts * Add model::BatchId * Port leveldb_key.{h,cc} * Add string StartsWith * Add leveldb_key_test.cc to the project * Revert back to using leveldb::Slice for read/describe These operations universally operate on keys obtained from leveldb so it's actually unhelpful to force all the callers to make absl::string_views from them. * Everything passing * Drop unused function * Style * STart work on reads * Swap reads in queryCache to use transactions * Fix up tests of querycache * Drop commented out code * Cleanup * Style * Fix up for passing tests * style * Renaming * Style * Start work on ToString for transactions * Add ToString() method to LevelDbTransaction * Style * lint * Fix includes, drop runTransaction * current_transaction -> currentTransaction * LevelDbTransaction::NewIterator now returns a unique_ptr * Style * Revert addition of util::StartsWith * Add log line * Style * Add log line * Style * Add debug log line for commits, drop unused BatchDescription * Fix an include, but mostly try to trigger a travis build
Diffstat (limited to 'Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm')
-rw-r--r--Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm8
1 files changed, 4 insertions, 4 deletions
diff --git a/Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm b/Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm
index 2a1efb0..c959b4f 100644
--- a/Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm
+++ b/Firestore/Example/Tests/Local/FSTLevelDBTransactionTests.mm
@@ -62,7 +62,7 @@ using firebase::firestore::local::LevelDbTransaction;
std::string key = "key1";
transaction.Put(key, "value");
- std::unique_ptr<LevelDbTransaction::Iterator> iter(transaction.NewIterator());
+ auto iter = transaction.NewIterator();
iter->Seek(key);
XCTAssertEqual(key, iter->key());
iter->Next();
@@ -212,7 +212,7 @@ using firebase::firestore::local::LevelDbTransaction;
transaction.Put("key_" + std::to_string(i), "value_" + std::to_string(i));
}
- std::unique_ptr<LevelDbTransaction::Iterator> it(transaction.NewIterator());
+ auto it = transaction.NewIterator();
it->Seek("key_0");
for (int i = 0; i < 4; ++i) {
XCTAssertTrue(it->Valid());
@@ -234,7 +234,7 @@ using firebase::firestore::local::LevelDbTransaction;
// Create a transaction, iterate, deleting key_0. Verify we still iterate key_1.
LevelDbTransaction transaction(_db.get());
- std::unique_ptr<LevelDbTransaction::Iterator> it(transaction.NewIterator());
+ auto it = transaction.NewIterator();
it->Seek("key_0");
XCTAssertTrue(it->Valid());
XCTAssertEqual("key_0", it->key());
@@ -256,7 +256,7 @@ using firebase::firestore::local::LevelDbTransaction;
// Create a transaction, iterate to key_1, delete key_2. Verify we still iterate key_3.
LevelDbTransaction transaction(_db.get());
- std::unique_ptr<LevelDbTransaction::Iterator> it(transaction.NewIterator());
+ auto it = transaction.NewIterator();
it->Seek("key_0");
XCTAssertTrue(it->Valid());
XCTAssertEqual("key_0", it->key());