mirror of
https://github.com/status-im/qzxing.git
synced 2025-02-14 20:06:25 +00:00
further enhance the testing utilities
This commit is contained in:
parent
59ed259a15
commit
09bce488b4
@ -8,6 +8,22 @@
|
||||
|
||||
namespace zxing{
|
||||
|
||||
// TO-DO
|
||||
// use macros __FILE__, __LINE__
|
||||
|
||||
template<typename T, int sz>
|
||||
static int getArrayLength(T(&)[sz])
|
||||
{
|
||||
return sz;
|
||||
}
|
||||
|
||||
#define ASSERT_THROWS(x) \
|
||||
try { \
|
||||
#x; \
|
||||
assertTrue(false); \
|
||||
} catch(zxing::Exception &/*e*/) { \
|
||||
}
|
||||
|
||||
class TestCase {
|
||||
|
||||
private:
|
||||
@ -34,13 +50,17 @@ private:
|
||||
protected:
|
||||
template<class T> void assertEquals(T expected, T actual) {
|
||||
if(expected != actual) {
|
||||
QString message = QString("Expected: \n") + itemToString(expected) +
|
||||
QString(", Got: \n") + itemToString(actual);
|
||||
//Q_ASSERT_X(false, "assertEquals", message.toStdString().c_str());
|
||||
QString message = QString("\nExpected: \n[") + itemToString(expected) +
|
||||
QString("], \nGot: \n[") + itemToString(actual) + QString("]");
|
||||
throw zxing::Exception(message.toStdString().c_str());
|
||||
}
|
||||
}
|
||||
|
||||
void assertEquals(const char* expected, const std::string &actual) {
|
||||
std::string expected_str(expected);
|
||||
assertEquals(expected_str, actual);
|
||||
}
|
||||
|
||||
void assertSame(qrcode::Mode &expected, qrcode::Mode &actual){
|
||||
assertEquals(expected, actual);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user