libmdbx/test/try.cc
Leo Yuriev 17b8e48bf4 mdbx: cleanup after last pull-request.
Cleanup after 4e40af60e7 (Merge pull request #20 from rouzier/feature/txn_try).
2017-10-26 21:49:38 +03:00

38 lines
815 B
C++

#include "test.h"
bool testcase_try::setup() {
log_trace(">> setup");
if (!inherited::setup())
return false;
log_trace("<< setup");
return true;
}
bool testcase_try::run() {
db_open();
assert(!txn_guard);
MDBX_txn *txn = nullptr;
MDBX_txn *txn2 = nullptr;
int rc = mdbx_txn_begin(db_guard.get(), nullptr, 0, &txn);
if (unlikely(rc != MDBX_SUCCESS))
failure_perror("mdbx_txn_begin(MDBX_TRYTXN)", rc);
else {
rc = mdbx_txn_begin(db_guard.get(), nullptr, MDBX_TRYTXN, &txn2);
if (unlikely(rc != MDBX_BUSY))
failure_perror("mdbx_txn_begin(MDBX_TRYTXN)", rc);
}
txn_guard.reset(txn);
return true;
}
bool testcase_try::teardown() {
log_trace(">> teardown");
cursor_guard.release();
txn_guard.release();
db_guard.release();
return inherited::teardown();
}