20 #ifndef RIPPLE_BASICS_TESTSUITE_H_INCLUDED
21 #define RIPPLE_BASICS_TESTSUITE_H_INCLUDED
23 #include <ripple/beast/unit_test.h>
31 template <
class S,
class T>
35 if (actual != expected)
39 ss << message <<
"\n";
40 ss <<
"Actual: " << actual <<
"\n"
41 <<
"Expected: " << expected;
49 template <
class S,
class T>
53 if (actual == expected)
57 ss << message <<
"\n";
58 ss <<
"Actual: " << actual <<
"\n"
59 <<
"Expected anything but: " << expected;
67 template <
class Collection>
70 Collection
const& actual,
71 Collection
const& expected,
76 actual.size(), expected.size(), msg +
"Sizes are different");
80 auto i = begin(actual);
81 auto j = begin(expected);
84 for (; i != end(actual) && j != end(expected); ++i, ++j, ++k)
97 template <
class Exception,
class Functor>
101 bool success =
false;
106 catch (Exception
const&)
110 return expect(success,
addPrefix(message) +
"no exception thrown");
113 template <
class Functor>
117 bool success =
false;
126 return expect(success,
addPrefix(message) +
"no exception thrown");
bool expectException(Functor f, std::string const &message="")
bool expectEquals(S actual, T expected, std::string const &message="")
static std::string addPrefix(std::string const &message)
bool expectCollectionEquals(Collection const &actual, Collection const &expected, std::string const &message="")
bool expectNotEquals(S actual, T expected, std::string const &message="")
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
bool expectException(Functor f, std::string const &message="")