changeset 182:6c3a089d3265

Add test for str_base64_decode as i suspect it to have a bug
author Andre Heinecke <aheinecke@intevation.de>
date Tue, 25 Mar 2014 17:17:41 +0000
parents bea93c8651b7
children 4def8b263dd3
files ui/tests/CMakeLists.txt ui/tests/commontest.cpp ui/tests/commontest.h
diffstat 3 files changed, 46 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- 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}")
 
--- /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 <QString>
+#include <QByteArray>
+#include <QTest>
+
+#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);
--- /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 <QObject>
+
+class CommonTest: public QObject
+{
+  Q_OBJECT
+
+private Q_SLOTS:
+  void testStrBase64Decode();
+};
+#endif

http://wald.intevation.org/projects/trustbridge/