Mercurial > trustbridge
annotate ui/tests/commontest.cpp @ 241:74d6e33c7d38
Added missing free().
author | Sascha Wilde <wilde@intevation.de> |
---|---|
date | Fri, 28 Mar 2014 13:33:58 +0100 |
parents | d773e540dec3 |
children | 6435e28ae753 |
rev | line source |
---|---|
182
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
1 #include <QString> |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
2 #include <QByteArray> |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
3 #include <QTest> |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
4 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
5 #include "commontest.h" |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
6 #include "strhelp.h" |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
7 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
8 void CommonTest::testStrBase64Decode() { |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
9 char garbage[1000]; |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
10 char *data = NULL; |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
11 size_t data_size = 0; |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
12 int ret; |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
13 for (int i = 0; i < 1000; i++) { |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
14 garbage[i] = (char) qrand() % 255; |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
15 } |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
16 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
17 QByteArray ba(garbage, 1000); |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
18 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
19 QByteArray baB64 = ba.toBase64(); |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
20 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
21 ret = str_base64_decode(&data, &data_size, (char *)baB64.constData(), baB64.size()); |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
22 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
23 QVERIFY(ret == 0); |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
24 QVERIFY(data_size == 1000); |
184
1f44aae4528e
Add C linkage for strhelp. Check for data in commontest.
Andre Heinecke <aheinecke@intevation.de>
parents:
182
diff
changeset
|
25 QVERIFY(data); |
182
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
26 |
233
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
27 ret = str_base64_decode(&data, &data_size, (char *)ba.constData(), ba.size()); |
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
28 QVERIFY(ret != 0); |
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
29 |
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
30 const char * foo = "bla"; |
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
31 ret = str_base64_decode(&data, &data_size, (char *)foo, 3); |
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
32 QVERIFY(ret != 0); |
d773e540dec3
Add checks for invalid input
Andre Heinecke <aheinecke@intevation.de>
parents:
184
diff
changeset
|
33 |
182
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
34 for (size_t i = 0; i < data_size; i++) { |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
35 QVERIFY(garbage[i] == data[i]); |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
36 } |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
37 free (data); |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
38 } |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
39 |
6c3a089d3265
Add test for str_base64_decode as i suspect it to have a bug
Andre Heinecke <aheinecke@intevation.de>
parents:
diff
changeset
|
40 QTEST_GUILESS_MAIN (CommonTest); |