Make test_bitcoin run in a temp datadir
This commit is contained in:
parent
597fa4cd63
commit
487db8a2b1
1 changed files with 7 additions and 0 deletions
|
@ -1,10 +1,12 @@
|
||||||
#define BOOST_TEST_MODULE Bitcoin Test Suite
|
#define BOOST_TEST_MODULE Bitcoin Test Suite
|
||||||
#include <boost/test/unit_test.hpp>
|
#include <boost/test/unit_test.hpp>
|
||||||
|
#include <boost/filesystem.hpp>
|
||||||
|
|
||||||
#include "db.h"
|
#include "db.h"
|
||||||
#include "txdb.h"
|
#include "txdb.h"
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "wallet.h"
|
#include "wallet.h"
|
||||||
|
#include "util.h"
|
||||||
|
|
||||||
CWallet* pwalletMain;
|
CWallet* pwalletMain;
|
||||||
CClientUIInterface uiInterface;
|
CClientUIInterface uiInterface;
|
||||||
|
@ -14,11 +16,15 @@ extern void noui_connect();
|
||||||
|
|
||||||
struct TestingSetup {
|
struct TestingSetup {
|
||||||
CCoinsViewDB *pcoinsdbview;
|
CCoinsViewDB *pcoinsdbview;
|
||||||
|
boost::filesystem::path pathTemp;
|
||||||
|
|
||||||
TestingSetup() {
|
TestingSetup() {
|
||||||
fPrintToDebugger = true; // don't want to write to debug.log file
|
fPrintToDebugger = true; // don't want to write to debug.log file
|
||||||
noui_connect();
|
noui_connect();
|
||||||
bitdb.MakeMock();
|
bitdb.MakeMock();
|
||||||
|
pathTemp = GetTempPath() / strprintf("test_bitcoin_%lu_%i", (unsigned long)GetTime(), (int)(GetRand(100000)));
|
||||||
|
boost::filesystem::create_directories(pathTemp);
|
||||||
|
mapArgs["-datadir"] = pathTemp.string();
|
||||||
pblocktree = new CBlockTreeDB(1 << 20, true);
|
pblocktree = new CBlockTreeDB(1 << 20, true);
|
||||||
pcoinsdbview = new CCoinsViewDB(1 << 23, true);
|
pcoinsdbview = new CCoinsViewDB(1 << 23, true);
|
||||||
pcoinsTip = new CCoinsViewCache(*pcoinsdbview);
|
pcoinsTip = new CCoinsViewCache(*pcoinsdbview);
|
||||||
|
@ -36,6 +42,7 @@ struct TestingSetup {
|
||||||
delete pcoinsdbview;
|
delete pcoinsdbview;
|
||||||
delete pblocktree;
|
delete pblocktree;
|
||||||
bitdb.Flush(true);
|
bitdb.Flush(true);
|
||||||
|
boost::filesystem::remove_all(pathTemp);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue