# HG changeset patch # User Andre Heinecke # Date 1395767861 0 # Node ID 6c3a089d3265599565f12109c532c4531213749e # Parent bea93c8651b7dc0fec47388c034c931388c17fe5 Add test for str_base64_decode as i suspect it to have a bug diff -r bea93c8651b7 -r 6c3a089d3265 ui/tests/CMakeLists.txt --- a/ui/tests/CMakeLists.txt Tue Mar 25 17:56:56 2014 +0100 +++ b/ui/tests/CMakeLists.txt Tue Mar 25 17:17:41 2014 +0000 @@ -37,6 +37,7 @@ # Cinstprocess add_m13_test(cinstprocesstest.cpp "${CERTIFICATELIST_SOURCES}") +add_m13_test(commontest.cpp "") #add_m13_test(${CMAKE_SOURCE_DIR}/ui/main.cpp "${M13UI_SOURCES}") diff -r bea93c8651b7 -r 6c3a089d3265 ui/tests/commontest.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ui/tests/commontest.cpp Tue Mar 25 17:17:41 2014 +0000 @@ -0,0 +1,32 @@ +#include +#include +#include + +#include "commontest.h" +#include "strhelp.h" + +void CommonTest::testStrBase64Decode() { + char garbage[1000]; + char *data = NULL; + size_t data_size = 0; + int ret; + for (int i = 0; i < 1000; i++) { + garbage[i] = (char) qrand() % 255; + } + + QByteArray ba(garbage, 1000); + + QByteArray baB64 = ba.toBase64(); + + ret = str_base64_decode(&data, &data_size, (char *)baB64.constData(), baB64.size()); + + QVERIFY(ret == 0); + QVERIFY(data_size == 1000); + + for (size_t i = 0; i < data_size; i++) { + QVERIFY(garbage[i] == data[i]); + } + free (data); +} + +QTEST_GUILESS_MAIN (CommonTest); diff -r bea93c8651b7 -r 6c3a089d3265 ui/tests/commontest.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ui/tests/commontest.h Tue Mar 25 17:17:41 2014 +0000 @@ -0,0 +1,13 @@ +#ifndef COMMONTEST_H +#define COMMONTEST_H + +#include + +class CommonTest: public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void testStrBase64Decode(); +}; +#endif