Skip to content

Commit

Permalink
tests: add a BasicTestingSetup and apply to all tests
Browse files Browse the repository at this point in the history
Make sure that chainparams and logging is properly initialized. Doing
this for every test may be overkill, but this initialization is so
simple that that does not matter.

This should fix the travis issues.
  • Loading branch information
laanwj authored and Warrows committed Feb 3, 2019
1 parent af33dd6 commit 8176bb4
Show file tree
Hide file tree
Showing 31 changed files with 139 additions and 95 deletions.
2 changes: 1 addition & 1 deletion src/test/Checkpoints_tests.cpp
Expand Up @@ -16,7 +16,7 @@

using namespace std;

BOOST_FIXTURE_TEST_SUITE(Checkpoints_tests, TestingSetup)
BOOST_FIXTURE_TEST_SUITE(Checkpoints_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(sanity)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/allocator_tests.cpp
Expand Up @@ -5,10 +5,11 @@
#include "util.h"

#include "allocators.h"
#include "test/test_pivx.h"

#include <boost/test/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(allocator_tests)
BOOST_FIXTURE_TEST_SUITE(allocator_tests, BasicTestingSetup)

// Dummy memory page locker for platform independent tests
static const void *last_lock_addr, *last_unlock_addr;
Expand Down
4 changes: 2 additions & 2 deletions src/test/arith_uint256_tests.cpp
Expand Up @@ -13,9 +13,9 @@
#include "arith_uint256.h"
#include <string>
#include "version.h"
#include "test/test_pivx.h"

BOOST_AUTO_TEST_SUITE(arith_uint256_tests)
///BOOST_FIXTURE_TEST_SUITE(arith_uint256_tests, BasicTestingSetup)
BOOST_FIXTURE_TEST_SUITE(arith_uint256_tests, BasicTestingSetup)

/// Convert vector to arith_uint256, via uint256 blob
inline arith_uint256 arith_uint256V(const std::vector<unsigned char>& vch)
Expand Down
3 changes: 2 additions & 1 deletion src/test/base32_tests.cpp
Expand Up @@ -3,10 +3,11 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.

#include "utilstrencodings.h"
#include "test/test_pivx.h"

#include <boost/test/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(base32_tests)
BOOST_FIXTURE_TEST_SUITE(base32_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(base32_testvectors)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/base58_tests.cpp
Expand Up @@ -14,6 +14,7 @@
#include "uint256.h"
#include "util.h"
#include "utilstrencodings.h"
#include "test/test_pivx.h"

#include <boost/foreach.hpp>
#include <boost/test/unit_test.hpp>
Expand All @@ -22,7 +23,7 @@

extern UniValue read_json(const std::string& jsondata);

BOOST_AUTO_TEST_SUITE(base58_tests)
BOOST_FIXTURE_TEST_SUITE(base58_tests, BasicTestingSetup)

// Goal: test low-level base58 encoding functionality
BOOST_AUTO_TEST_CASE(base58_EncodeBase58)
Expand Down
3 changes: 2 additions & 1 deletion src/test/base64_tests.cpp
Expand Up @@ -3,10 +3,11 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.

#include "utilstrencodings.h"
#include "test/test_pivx.h"

#include <boost/test/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(base64_tests)
BOOST_FIXTURE_TEST_SUITE(base64_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(base64_testvectors)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/bip32_tests.cpp
Expand Up @@ -8,6 +8,7 @@
#include "key.h"
#include "uint256.h"
#include "util.h"
#include "test/test_bitcoin.h"

#include <string>
#include <vector>
Expand Down Expand Up @@ -107,7 +108,7 @@ void RunTest(const TestVector &test) {
}
}

BOOST_AUTO_TEST_SUITE(bip32_tests)
BOOST_FIXTURE_TEST_SUITE(bip32_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(bip32_test1) {
RunTest(test1);
Expand Down
3 changes: 2 additions & 1 deletion src/test/bloom_tests.cpp
Expand Up @@ -14,6 +14,7 @@
#include "uint256.h"
#include "util.h"
#include "utilstrencodings.h"
#include "test/test_pivx.h"

#include <vector>

Expand All @@ -23,7 +24,7 @@
using namespace std;
using namespace boost::tuples;

BOOST_AUTO_TEST_SUITE(bloom_tests)
BOOST_FIXTURE_TEST_SUITE(bloom_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(bloom_create_insert_serialize)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/checkblock_tests.cpp
Expand Up @@ -11,6 +11,7 @@
#include "clientversion.h"
#include "main.h"
#include "utiltime.h"
#include "test/test_pivx.h"

#include <cstdio>

Expand All @@ -19,7 +20,7 @@
#include <boost/test/unit_test.hpp>


BOOST_AUTO_TEST_SUITE(CheckBlock_tests)
BOOST_FIXTURE_TEST_SUITE(CheckBlock_tests, BasicTestingSetup)

bool read_block(const std::string& filename, CBlock& block)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/coins_tests.cpp
Expand Up @@ -5,6 +5,7 @@
#include "coins.h"
#include "random.h"
#include "uint256.h"
#include "test/test_pivx.h"

#include <vector>
#include <map>
Expand Down Expand Up @@ -60,7 +61,7 @@ class CCoinsViewTest : public CCoinsView
};
}

BOOST_AUTO_TEST_SUITE(coins_tests)
BOOST_FIXTURE_TEST_SUITE(coins_tests, BasicTestingSetup)

static const unsigned int NUM_SIMULATION_ITERATIONS = 40000;

Expand Down
3 changes: 2 additions & 1 deletion src/test/compress_tests.cpp
Expand Up @@ -4,6 +4,7 @@

#include "compressor.h"
#include "util.h"
#include "test/test_pivx.h"

#include <stdint.h>

Expand All @@ -21,7 +22,7 @@
// amounts 50 .. 21000000
#define NUM_MULTIPLES_50BTC 420000

BOOST_AUTO_TEST_SUITE(compress_tests)
BOOST_FIXTURE_TEST_SUITE(compress_tests, BasicTestingSetup)

bool static TestEncode(uint64_t in) {
return in == CTxOutCompressor::DecompressAmount(CTxOutCompressor::CompressAmount(in));
Expand Down
3 changes: 2 additions & 1 deletion src/test/crypto_tests.cpp
Expand Up @@ -11,13 +11,14 @@
#include "crypto/hmac_sha512.h"
#include "random.h"
#include "utilstrencodings.h"
#include "test/test_pivx.h"

#include <vector>

#include <boost/assign/list_of.hpp>
#include <boost/test/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(crypto_tests)
BOOST_FIXTURE_TEST_SUITE(crypto_tests, BasicTestingSetup)

template<typename Hasher, typename In, typename Out>
void TestVector(const Hasher &h, const In &in, const Out &out) {
Expand Down
3 changes: 2 additions & 1 deletion src/test/getarg_tests.cpp
Expand Up @@ -4,6 +4,7 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.

#include "util.h"
#include "test/test_pivx.h"

#include <string>
#include <vector>
Expand All @@ -12,7 +13,7 @@
#include <boost/foreach.hpp>
#include <boost/test/unit_test.hpp>

BOOST_AUTO_TEST_SUITE(getarg_tests)
BOOST_FIXTURE_TEST_SUITE(getarg_tests, BasicTestingSetup)

static void ResetArgs(const std::string& strArg)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/hash_tests.cpp
Expand Up @@ -4,14 +4,15 @@

#include "hash.h"
#include "utilstrencodings.h"
#include "test/test_pivx.h"

#include <vector>

#include <boost/test/unit_test.hpp>

using namespace std;

BOOST_AUTO_TEST_SUITE(hash_tests)
BOOST_FIXTURE_TEST_SUITE(hash_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(murmurhash3)
{
Expand Down
1 change: 0 additions & 1 deletion src/test/key_tests.cpp
Expand Up @@ -59,7 +59,6 @@ void dumpKeyInfo(uint256 privkey)
}
#endif


BOOST_FIXTURE_TEST_SUITE(key_tests, TestingSetup)

BOOST_AUTO_TEST_CASE(key_test1)
Expand Down
3 changes: 2 additions & 1 deletion src/test/mruset_tests.cpp
Expand Up @@ -6,6 +6,7 @@

#include "random.h"
#include "util.h"
#include "test/test_pivx.h"

#include <set>

Expand Down Expand Up @@ -34,7 +35,7 @@ class mrutester
}
};

BOOST_AUTO_TEST_SUITE(mruset_tests)
BOOST_FIXTURE_TEST_SUITE(mruset_tests, BasicTestingSetup)

// Test that an mruset behaves like a set, as long as no more than MAX_SIZE elements are in it
BOOST_AUTO_TEST_CASE(mruset_like_set)
Expand Down
3 changes: 2 additions & 1 deletion src/test/netbase_tests.cpp
Expand Up @@ -5,14 +5,15 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.

#include "netbase.h"
#include "test/test_pivx.h"

#include <string>

#include <boost/test/unit_test.hpp>

using namespace std;

BOOST_AUTO_TEST_SUITE(netbase_tests)
BOOST_FIXTURE_TEST_SUITE(netbase_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(netbase_networks)
{
Expand Down
4 changes: 3 additions & 1 deletion src/test/pmt_tests.cpp
Expand Up @@ -8,6 +8,8 @@
#include "streams.h"
#include "uint256.h"
#include "version.h"
#include "random.h"
#include "test/test_pivx.h"

#include <vector>

Expand All @@ -27,7 +29,7 @@ class CPartialMerkleTreeTester : public CPartialMerkleTree
}
};

BOOST_AUTO_TEST_SUITE(pmt_tests)
BOOST_FIXTURE_TEST_SUITE(pmt_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(pmt_test1)
{
Expand Down
1 change: 1 addition & 0 deletions src/test/sanity_tests.cpp
Expand Up @@ -7,6 +7,7 @@
#include "test_pivx.h"

#include <boost/test/unit_test.hpp>

BOOST_FIXTURE_TEST_SUITE(sanity_tests, TestingSetup)

BOOST_AUTO_TEST_CASE(basic_sanity)
Expand Down
5 changes: 4 additions & 1 deletion src/test/scriptnum_tests.cpp
Expand Up @@ -5,10 +5,13 @@

#include "libzerocoin/bignum.h"
#include "script/script.h"
#include "test/test_pivx.h"

#include <boost/test/unit_test.hpp>
#include <limits.h>
#include <stdint.h>
BOOST_AUTO_TEST_SUITE(scriptnum_tests)

BOOST_FIXTURE_TEST_SUITE(scriptnum_tests, BasicTestingSetup)

static const long values[] = \
{ 0, 1, CHAR_MIN, CHAR_MAX, UCHAR_MAX, SHRT_MIN, USHRT_MAX, INT_MIN, INT_MAX, static_cast<long>UINT_MAX, LONG_MIN, LONG_MAX };
Expand Down
8 changes: 5 additions & 3 deletions src/test/serialize_tests.cpp
Expand Up @@ -4,14 +4,16 @@

#include "serialize.h"
#include "streams.h"
#include "hash.h"
#include "test/test_pivx.h"

#include <stdint.h>

#include <boost/test/unit_test.hpp>

using namespace std;

BOOST_AUTO_TEST_SUITE(serialize_tests)
BOOST_FIXTURE_TEST_SUITE(serialize_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(varints)
{
Expand Down Expand Up @@ -70,8 +72,8 @@ static bool isCanonicalException(const std::ios_base::failure& ex)

// The string returned by what() can be different for different platforms.
// Instead of directly comparing the ex.what() with an expected string,
// create an instance of exception to see if ex.what() matches
// the expected explanatory string returned by the exception instance.
// create an instance of exception to see if ex.what() matches
// the expected explanatory string returned by the exception instance.
return strcmp(expectedException.what(), ex.what()) == 0;
}

Expand Down
2 changes: 1 addition & 1 deletion src/test/sighash_tests.cpp
Expand Up @@ -114,7 +114,7 @@ void static RandomTransaction(CMutableTransaction &tx, bool fSingle) {
}
}

BOOST_FIXTURE_TEST_SUITE(sighash_tests, TestingSetup)
BOOST_FIXTURE_TEST_SUITE(sighash_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(sighash_test)
{
Expand Down
2 changes: 1 addition & 1 deletion src/test/sigopcount_tests.cpp
Expand Up @@ -25,7 +25,7 @@ Serialize(const CScript& s)
return sSerialized;
}

BOOST_FIXTURE_TEST_SUITE(sigopcount_tests, TestingSetup)
BOOST_FIXTURE_TEST_SUITE(sigopcount_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(GetSigOpCount)
{
Expand Down
3 changes: 2 additions & 1 deletion src/test/skiplist_tests.cpp
Expand Up @@ -6,14 +6,15 @@
#include "main.h"
#include "random.h"
#include "util.h"
#include "test/test_pivx.h"

#include <vector>

#include <boost/test/unit_test.hpp>

#define SKIPLIST_LENGTH 300000

BOOST_AUTO_TEST_SUITE(skiplist_tests)
BOOST_FIXTURE_TEST_SUITE(skiplist_tests, BasicTestingSetup)

BOOST_AUTO_TEST_CASE(skiplist_test)
{
Expand Down
12 changes: 9 additions & 3 deletions src/test/test_pivx.cpp
Expand Up @@ -25,14 +25,21 @@ CWallet* pwalletMain;
extern bool fPrintToConsole;
extern void noui_connect();

TestingSetup::TestingSetup()
BasicTestingSetup::BasicTestingSetup()
{
ECC_Start();
SetupEnvironment();
fPrintToDebugLog = false; // don't want to write to debug.log file
fCheckBlockIndex = true;
SelectParams(CBaseChainParams::UNITTEST);
noui_connect();
}
BasicTestingSetup::~BasicTestingSetup()
{
ECC_Stop();
}

TestingSetup::TestingSetup()
{
#ifdef ENABLE_WALLET
bitdb.MakeMock();
#endif
Expand Down Expand Up @@ -75,7 +82,6 @@ TestingSetup::~TestingSetup()
bitdb.Reset();
#endif
boost::filesystem::remove_all(pathTemp);
ECC_Stop();
}

void Shutdown(void* parg)
Expand Down

0 comments on commit 8176bb4

Please sign in to comment.