diff options
author | Philip Kaufmann <phil.kaufmann@t-online.de> | 2013-11-14 19:21:16 +0100 |
---|---|---|
committer | Philip Kaufmann <phil.kaufmann@t-online.de> | 2013-12-06 11:06:57 +0100 |
commit | 4cf3411056f6a59fc5fe07784b6b6a512d76b046 (patch) | |
tree | d06a4552af4cc2694c9e2fec98d840365a298a27 /src/qt/test | |
parent | b4297c8fffa6a21535015db4e34b95041a386fbb (diff) |
[Qt] misc PaymentServer changes (e.g. changes to eventFilter())
- make eventFilter() private and pass events on to QObject::eventFilter()
instead of just returning false
- re-work paymentservertest.cpp to correctly handle the event test
after the above change (rewrite test_main to allow usage of
QCoreApplication:: in the tests)
- delete socket when we were unable to connect in ipcSendCommandLine()
- show a message to the user if we fail to start-up (instead of just a
debug.log entry)
- misc small comment changes
Diffstat (limited to 'src/qt/test')
-rw-r--r-- | src/qt/test/paymentservertests.cpp | 14 | ||||
-rw-r--r-- | src/qt/test/paymentservertests.h | 2 | ||||
-rw-r--r-- | src/qt/test/test_main.cpp | 8 |
3 files changed, 16 insertions, 8 deletions
diff --git a/src/qt/test/paymentservertests.cpp b/src/qt/test/paymentservertests.cpp index b8f2cc65cb..7dee7a9cda 100644 --- a/src/qt/test/paymentservertests.cpp +++ b/src/qt/test/paymentservertests.cpp @@ -7,12 +7,9 @@ #include <openssl/x509.h> #include <openssl/x509_vfy.h> -#include <QCoreApplication> -#include <QDebug> + #include <QFileOpenEvent> #include <QTemporaryFile> -#include <QVariant> - X509 *parse_b64der_cert(const char* cert_data) { @@ -41,9 +38,14 @@ static SendCoinsRecipient handleRequest(PaymentServer* server, std::vector<unsig f.write((const char*)&data[0], data.size()); f.close(); - // Create a FileOpenEvent and send it directly to the server's event filter: + // Create a QObject, install event filter from PaymentServer + // and send a file open event to the object + QObject object; + object.installEventFilter(server); QFileOpenEvent event(f.fileName()); - server->eventFilter(NULL, &event); + // If sending the event fails, this will cause sigCatcher to be empty, + // which will lead to a test failure anyway. + QCoreApplication::sendEvent(&object, &event); QObject::disconnect(server, SIGNAL(receivedPaymentRequest(SendCoinsRecipient)), &sigCatcher, SLOT(getRecipient(SendCoinsRecipient))); diff --git a/src/qt/test/paymentservertests.h b/src/qt/test/paymentservertests.h index 0bff923ad4..884e535a60 100644 --- a/src/qt/test/paymentservertests.h +++ b/src/qt/test/paymentservertests.h @@ -20,8 +20,10 @@ private slots: class RecipientCatcher : public QObject { Q_OBJECT + public slots: void getRecipient(SendCoinsRecipient r); + public: SendCoinsRecipient recipient; }; diff --git a/src/qt/test/test_main.cpp b/src/qt/test/test_main.cpp index 5c941c6387..ae584706f1 100644 --- a/src/qt/test/test_main.cpp +++ b/src/qt/test/test_main.cpp @@ -1,8 +1,7 @@ - - #include "paymentservertests.h" #include "uritests.h" +#include <QCoreApplication> #include <QObject> #include <QTest> @@ -11,6 +10,11 @@ int main(int argc, char *argv[]) { bool fInvalid = false; + // Don't remove this, it's needed to access + // QCoreApplication:: in the tests + QCoreApplication app(argc, argv); + app.setApplicationName("Bitcoin-Qt-test"); + URITests test1; if (QTest::qExec(&test1) != 0) fInvalid = true; |