Mercurial > trustbridge
comparison ui/tests/downloadertest.cpp @ 240:c05e126b0b9e
Fix downloadertest and factor out generating file input.
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Fri, 28 Mar 2014 15:21:02 +0000 |
parents | 64200b011dfd |
children | 17e1c8f37d72 |
comparison
equal
deleted
inserted
replaced
239:6b4ad6ccc48e | 240:c05e126b0b9e |
---|---|
1 #include "downloadertest.h" | 1 #include "downloadertest.h" |
2 #include "downloader.h" | 2 #include "downloader.h" |
3 #include "common.h" | |
3 | 4 |
4 #include <QTextStream> | 5 #include <QTextStream> |
5 #include <QFile> | 6 #include <QFile> |
6 #include <QVariant> | 7 #include <QVariant> |
7 #include "unistd.h" | 8 #include <unistd.h> |
8 | 9 |
9 #define MAX_WAIT 20 | 10 #define MAX_WAIT 20 |
10 | 11 |
11 #define SETUP_SPY \ | 12 #define SETUP_SPY \ |
12 QSignalSpy newListAvailable(downloader, \ | 13 QSignalSpy newListAvailable(downloader, \ |
26 serverConfig.open(QIODevice::WriteOnly); | 27 serverConfig.open(QIODevice::WriteOnly); |
27 mimeConfig.open(QIODevice::WriteOnly); | 28 mimeConfig.open(QIODevice::WriteOnly); |
28 mimeConfig.close(); /* just an empty file */ | 29 mimeConfig.close(); /* just an empty file */ |
29 | 30 |
30 QTextStream configStream(&serverConfig); | 31 QTextStream configStream(&serverConfig); |
31 qDebug() << "Config file name: " << serverConfig.fileName(); | |
32 configStream << | 32 configStream << |
33 "Binding { " << endl << | 33 "Binding { " << endl << |
34 "Port = 44443 " << endl << | 34 "Port = 44443 " << endl << |
35 "SSLcertFile = " << SOURCE_DIR << | 35 "SSLcertFile = " << SOURCE_DIR << |
36 "/data/valid_ssl_bp_priv.pem" << endl << | 36 "/data/valid_ssl_bp_priv.pem" << endl << |
37 "Interface = 127.0.0.1" << endl << | 37 "Interface = 127.0.0.1" << endl << |
38 "}" << endl << | 38 "}" << endl << |
39 "Hostname = 127.0.0.1" << endl << | 39 "Hostname = 127.0.0.1" << endl << |
40 "WebsiteRoot = " << SOURCE_DIR << "/data" << endl; | 40 "WebsiteRoot = " << serverConfigDir.path() << endl; |
41 configStream.flush(); | 41 configStream.flush(); |
42 | 42 |
43 serverConfig.close(); | 43 serverConfig.close(); |
44 serverProc.start(); | 44 serverProc.start(); |
45 serverProc.waitForStarted(); | 45 serverProc.waitForStarted(); |
50 serverProc.setProgram(HIAWATHA_EXECUTABLE); | 50 serverProc.setProgram(HIAWATHA_EXECUTABLE); |
51 arguments << "-d" << "-c" << serverConfigDir.path(); | 51 arguments << "-d" << "-c" << serverConfigDir.path(); |
52 serverProc.setArguments(arguments); | 52 serverProc.setArguments(arguments); |
53 qRegisterMetaType<SSLConnection::ErrorCode>("SSLConnection::ErrorCode"); | 53 qRegisterMetaType<SSLConnection::ErrorCode>("SSLConnection::ErrorCode"); |
54 startServer(); | 54 startServer(); |
55 garbageInfo = QFileInfo(getRandomDataFile(2 * 1024, serverConfigDir.path())); | |
56 QVERIFY(QFile::copy(QString::fromLocal8Bit(SOURCE_DIR"/data/list-valid.txt"), | |
57 serverConfigDir.path() + "/" + "list-valid.txt")); | |
58 | |
55 QTest::qWait(1000); /* Wait for the server to settle */ | 59 QTest::qWait(1000); /* Wait for the server to settle */ |
56 } | 60 } |
57 | 61 |
58 void DownloaderTest::downloaderError(const QString &message, SSLConnection::ErrorCode error) | 62 void DownloaderTest::downloaderError(const QString &message, SSLConnection::ErrorCode error) |
59 { | 63 { |
78 { | 82 { |
79 QFile otherCert(QString::fromLatin1(SOURCE_DIR) + | 83 QFile otherCert(QString::fromLatin1(SOURCE_DIR) + |
80 "/data/valid_ssl_rsa.pem"); | 84 "/data/valid_ssl_rsa.pem"); |
81 otherCert.open(QIODevice::ReadOnly); | 85 otherCert.open(QIODevice::ReadOnly); |
82 | 86 |
87 QFileInfo fi(getRandomDataFile(200)); | |
88 | |
83 Downloader* downloader = new Downloader(this, | 89 Downloader* downloader = new Downloader(this, |
84 QString::fromLatin1("https://localhost:44443"), | 90 QString::fromLatin1("https://localhost:44443"), |
85 otherCert.readAll(), | 91 otherCert.readAll(), |
86 QDateTime::currentDateTime(), // Last installed SW | 92 QDateTime::currentDateTime(), // Last installed SW |
87 QDateTime::fromString("2010", "YYYY"), | 93 QDateTime::fromString("2010", "YYYY"), |
88 "/garbage_2MB", | 94 "/" + garbageInfo.fileName(), |
89 "/list-valid.txt"); | 95 "/list-valid.txt"); |
90 otherCert.close(); | 96 otherCert.close(); |
91 | 97 |
92 SETUP_SPY | 98 SETUP_SPY |
93 | 99 |
144 Downloader* downloader = new Downloader(this, | 150 Downloader* downloader = new Downloader(this, |
145 QString::fromLatin1("https://localhost:44443"), | 151 QString::fromLatin1("https://localhost:44443"), |
146 validCert.readAll(), | 152 validCert.readAll(), |
147 QDateTime::fromString("2010", "YYYY"), | 153 QDateTime::fromString("2010", "YYYY"), |
148 QDateTime::currentDateTime(), | 154 QDateTime::currentDateTime(), |
149 "/garbage_2MB", | 155 "/" + garbageInfo.fileName(), |
150 "/list-valid.txt"); | 156 "/list-valid.txt"); |
151 validCert.close(); | 157 validCert.close(); |
152 | 158 |
153 SETUP_SPY | 159 SETUP_SPY |
154 | 160 |
168 QVERIFY(newSoftwareAvailable.count() == 1); | 174 QVERIFY(newSoftwareAvailable.count() == 1); |
169 QVERIFY(errors.count() == 0); | 175 QVERIFY(errors.count() == 0); |
170 | 176 |
171 QList<QVariant> arguments = newSoftwareAvailable.takeFirst(); | 177 QList<QVariant> arguments = newSoftwareAvailable.takeFirst(); |
172 | 178 |
173 QVERIFY(filesEqual(QString::fromLatin1(SOURCE_DIR) + "/data/garbage_2MB", | 179 QVERIFY(filesEqual(serverConfigDir.path() + "/" + garbageInfo.fileName(), |
174 arguments.at(0).toString())); | 180 arguments.at(0).toString())); |
175 | 181 |
176 delete downloader; | 182 delete downloader; |
177 } | 183 } |
178 | 184 |
185 Downloader* downloader = new Downloader(this, | 191 Downloader* downloader = new Downloader(this, |
186 QString::fromLatin1("https://localhost:44443"), | 192 QString::fromLatin1("https://localhost:44443"), |
187 validCert.readAll(), | 193 validCert.readAll(), |
188 QDateTime::currentDateTime(), // Last installed SW | 194 QDateTime::currentDateTime(), // Last installed SW |
189 QDateTime::fromString("2010", "YYYY"), | 195 QDateTime::fromString("2010", "YYYY"), |
190 "/garbage_2MB", | 196 "/" + garbageInfo.fileName(), |
191 "/list-valid.txt"); | 197 "/list-valid.txt"); |
192 validCert.close(); | 198 validCert.close(); |
193 | 199 |
194 SETUP_SPY | 200 SETUP_SPY |
195 | 201 |