Changeset View
Changeset View
Standalone View
Standalone View
src/wallet/test/db_tests.cpp
Show All 10 Lines | |||||
#include <boost/test/unit_test.hpp> | #include <boost/test/unit_test.hpp> | ||||
#include <memory> | #include <memory> | ||||
BOOST_FIXTURE_TEST_SUITE(db_tests, BasicTestingSetup) | BOOST_FIXTURE_TEST_SUITE(db_tests, BasicTestingSetup) | ||||
BOOST_AUTO_TEST_CASE(getwalletenv_file) { | BOOST_AUTO_TEST_CASE(getwalletenv_file) { | ||||
std::string test_name = "test_name.dat"; | std::string test_name = "test_name.dat"; | ||||
fs::path datadir = SetDataDir("tempdir"); | const fs::path datadir = GetDataDir(); | ||||
fs::path file_path = datadir / test_name; | fs::path file_path = datadir / test_name; | ||||
std::ofstream f(file_path.BOOST_FILESYSTEM_C_STR); | std::ofstream f(file_path.BOOST_FILESYSTEM_C_STR); | ||||
f.close(); | f.close(); | ||||
std::string filename; | std::string filename; | ||||
std::shared_ptr<BerkeleyEnvironment> env = | std::shared_ptr<BerkeleyEnvironment> env = | ||||
GetWalletEnv(file_path, filename); | GetWalletEnv(file_path, filename); | ||||
BOOST_CHECK(filename == test_name); | BOOST_CHECK(filename == test_name); | ||||
BOOST_CHECK(env->Directory() == datadir); | BOOST_CHECK(env->Directory() == datadir); | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(getwalletenv_directory) { | BOOST_AUTO_TEST_CASE(getwalletenv_directory) { | ||||
std::string expected_name = "wallet.dat"; | std::string expected_name = "wallet.dat"; | ||||
fs::path datadir = SetDataDir("tempdir"); | const fs::path datadir = GetDataDir(); | ||||
std::string filename; | std::string filename; | ||||
std::shared_ptr<BerkeleyEnvironment> env = GetWalletEnv(datadir, filename); | std::shared_ptr<BerkeleyEnvironment> env = GetWalletEnv(datadir, filename); | ||||
BOOST_CHECK(filename == expected_name); | BOOST_CHECK(filename == expected_name); | ||||
BOOST_CHECK(env->Directory() == datadir); | BOOST_CHECK(env->Directory() == datadir); | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(getwalletenv_g_dbenvs_multiple) { | BOOST_AUTO_TEST_CASE(getwalletenv_g_dbenvs_multiple) { | ||||
fs::path datadir = SetDataDir("tempdir"); | fs::path datadir = GetDataDir() / "1"; | ||||
fs::path datadir_2 = SetDataDir("tempdir_2"); | fs::path datadir_2 = GetDataDir() / "2"; | ||||
std::string filename; | std::string filename; | ||||
std::shared_ptr<BerkeleyEnvironment> env_1 = | std::shared_ptr<BerkeleyEnvironment> env_1 = | ||||
GetWalletEnv(datadir, filename); | GetWalletEnv(datadir, filename); | ||||
std::shared_ptr<BerkeleyEnvironment> env_2 = | std::shared_ptr<BerkeleyEnvironment> env_2 = | ||||
GetWalletEnv(datadir, filename); | GetWalletEnv(datadir, filename); | ||||
std::shared_ptr<BerkeleyEnvironment> env_3 = | std::shared_ptr<BerkeleyEnvironment> env_3 = | ||||
GetWalletEnv(datadir_2, filename); | GetWalletEnv(datadir_2, filename); | ||||
BOOST_CHECK(env_1 == env_2); | BOOST_CHECK(env_1 == env_2); | ||||
BOOST_CHECK(env_2 != env_3); | BOOST_CHECK(env_2 != env_3); | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(getwalletenv_g_dbenvs_free_instance) { | BOOST_AUTO_TEST_CASE(getwalletenv_g_dbenvs_free_instance) { | ||||
fs::path datadir = SetDataDir("tempdir"); | fs::path datadir = GetDataDir() / "1"; | ||||
fs::path datadir_2 = SetDataDir("tempdir_2"); | fs::path datadir_2 = GetDataDir() / "2"; | ||||
std::string filename; | std::string filename; | ||||
std::shared_ptr<BerkeleyEnvironment> env_1_a = | std::shared_ptr<BerkeleyEnvironment> env_1_a = | ||||
GetWalletEnv(datadir, filename); | GetWalletEnv(datadir, filename); | ||||
std::shared_ptr<BerkeleyEnvironment> env_2_a = | std::shared_ptr<BerkeleyEnvironment> env_2_a = | ||||
GetWalletEnv(datadir_2, filename); | GetWalletEnv(datadir_2, filename); | ||||
env_1_a.reset(); | env_1_a.reset(); | ||||
Show All 10 Lines |