aheinecke@182: #include aheinecke@182: #include aheinecke@182: #include aheinecke@182: aheinecke@182: #include "commontest.h" aheinecke@182: #include "strhelp.h" aheinecke@182: aheinecke@237: void CommonTest::testInvalidInput() { aheinecke@237: const char * foo = "Zm9vA"; /* Invalid input with a bit valid input */ aheinecke@237: char *data = NULL; aheinecke@237: size_t data_size = 0; aheinecke@237: int ret = -1; aheinecke@237: ret = str_base64_decode(&data, &data_size, (char *)foo, 5); aheinecke@237: aheinecke@239: QVERIFY(ret == 0); aheinecke@239: QVERIFY(data == QString::fromLatin1("foo")); aheinecke@237: free(data); aheinecke@237: } aheinecke@237: aheinecke@182: void CommonTest::testStrBase64Decode() { aheinecke@182: char garbage[1000]; aheinecke@182: char *data = NULL; aheinecke@182: size_t data_size = 0; aheinecke@182: int ret; aheinecke@182: for (int i = 0; i < 1000; i++) { aheinecke@182: garbage[i] = (char) qrand() % 255; aheinecke@182: } aheinecke@182: aheinecke@182: QByteArray ba(garbage, 1000); aheinecke@182: aheinecke@182: QByteArray baB64 = ba.toBase64(); aheinecke@182: aheinecke@182: ret = str_base64_decode(&data, &data_size, (char *)baB64.constData(), baB64.size()); aheinecke@182: aheinecke@182: QVERIFY(ret == 0); aheinecke@182: QVERIFY(data_size == 1000); aheinecke@184: QVERIFY(data); aheinecke@182: aheinecke@182: for (size_t i = 0; i < data_size; i++) { aheinecke@182: QVERIFY(garbage[i] == data[i]); aheinecke@182: } aheinecke@182: free (data); aheinecke@182: } aheinecke@182: aheinecke@182: QTEST_GUILESS_MAIN (CommonTest);