diff ui/tests/commontest.cpp @ 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
children 1f44aae4528e
line wrap: on
line diff
--- /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);

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