[DEV] Fix automatic unit tests Feathercoin 0.9.6 [Completed 29th Jan 2017]
-
Staying on topic ;-)
I’ve moved this back to “In Progress” - Explanation below:
When you build Feathercoin-QT with the tests the following binaries get built
/src/feathercoind
/src/test/test_bitcoin (the feathercoind test)/src/qt/feathercoin-qt
/src/qt/test/test_feathercoin-qt (the gui test)I apologise but this slipped my mind and while the test program builds with no complaints…we have some interesting stuff in the console print out when we run ./test_feathercoin-qt
see below:
aciddude@osboxes:~/Feathercoin/build/bin$ ./test_bitcoin-qt ********* Start testing of URITests ********* Config: Using QtTest library 5.5.1, Qt 5.5.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 5.4.0 20160609) PASS : URITests::initTestCase() FAIL! : URITests::uriTests() 'GUIUtil::parseBitcoinURI(uri, &rv)' returned FALSE. () Loc: [uritests.cpp(16)] PASS : URITests::cleanupTestCase() Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted ********* Finished testing of URITests ********* ********* Start testing of PaymentServerTests ********* Config: Using QtTest library 5.5.1, Qt 5.5.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 5.4.0 20160609) PASS : PaymentServerTests::initTestCase() QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::initNetManager : No active proxy server found. QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::processPaymentRequest : Secure payment request from "testmerchant.org" QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : Payment request: certificate expired or not yet active: QSslCertificate("3", "03", "LxHILx+N3qwVoAcCmQ5cyw==", (), ("Expired Test Merchant"), QMap(), QDateTime(2013-02-23 21:26:43.000 UTC Qt::TimeSpec(UTC)), QDateTime(2013-02-24 21:26:43.000 UTC Qt::TimeSpec(UTC))) QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::processPaymentRequest : Insecure payment request to "6sMH7m11qaUoZX2coz5oe33R64eGHQCAKi" QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : Payment request: certificate expired or not yet active: QSslCertificate("3", "03", "LxHILx+N3qwVoAcCmQ5cyw==", (), ("Expired Test Merchant"), QMap(), QDateTime(2013-02-23 21:26:43.000 UTC Qt::TimeSpec(UTC)), QDateTime(2013-02-24 21:26:43.000 UTC Qt::TimeSpec(UTC))) QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::processPaymentRequest : Secure payment request from "testmerchant8.org" QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : Payment request: certificate expired or not yet active: QSslCertificate("3", "06", "MiZaQ+g9lSHZGuHWkXZG+g==", (), ("Payment Request Intermediate 5"), QMap(), QDateTime(2013-02-23 22:59:51.000 UTC Qt::TimeSpec(UTC)), QDateTime(2013-02-24 22:59:51.000 UTC Qt::TimeSpec(UTC))) QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::processPaymentRequest : Insecure payment request to "6sMH7m11qaUoZX2coz5oe33R64eGHQCAKi" QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : Payment request: certificate expired or not yet active: QSslCertificate("3", "06", "MiZaQ+g9lSHZGuHWkXZG+g==", (), ("Payment Request Intermediate 5"), QMap(), QDateTime(2013-02-23 22:59:51.000 UTC Qt::TimeSpec(UTC)), QDateTime(2013-02-24 22:59:51.000 UTC Qt::TimeSpec(UTC))) QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : SSL error: certificate signature failure QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::processPaymentRequest : Insecure payment request to "6sMH7m11qaUoZX2coz5oe33R64eGHQCAKi" QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : SSL error: certificate signature failure QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : SSL error: unable to get local issuer certificate QDEBUG : PaymentServerTests::paymentServerTests() PaymentServer::processPaymentRequest : Insecure payment request to "6sMH7m11qaUoZX2coz5oe33R64eGHQCAKi" QDEBUG : PaymentServerTests::paymentServerTests() PaymentRequestPlus::getMerchant : SSL error: unable to get local issuer certificate PASS : PaymentServerTests::paymentServerTests() PASS : PaymentServerTests::cleanupTestCase() Totals: 3 passed, 0 failed, 0 skipped, 0 blacklisted ********* Finished testing of PaymentServerTests ********* aciddude@osboxes:~/Feathercoin/build/bin$
I’ll see if I can put in the time to get this working before the 0.9.6 release.
-
I don’t think that is a problem with the test code, it complains about the SSL certificate missing. It does not fail.
I’ve never checked, where SSL really is used, but installing the correct certificate should make the test work without complains. -
@Wellenreiter said in [DEV] Fix automatic unit tests Feathercoin 0.9.6 [In Progress]:
I don’t think that is a problem with the test code, it complains about the SSL certificate missing. It does not fail.
I’ve never checked, where SSL really is used, but installing the correct certificate should make the test work without complains.Yes you’re 100% correct. you have to actually pass it a valid certificate.
The URI tests I’ve fixed. it’s a very basic bitcoin:// to feathercoin:// will submit a PR soon.
once the URI test is fixed then all our tests are passing 100%.
-
URI tests fixed in PR https://github.com/FeatherCoin/Feathercoin/pull/154
Marked as completed: 29-01-2017
-
I’ll start a thread to cover the 0.11 tests, when we start moving this work over…
-
@wrapper said in [DEV] Fix automatic unit tests Feathercoin 0.9.6 [Completed 29th Jan 2017]:
I’ll start a thread to cover the 0.11 tests, when we start moving this work over…
When I fixed the 0.9.6 tests I had a look at the code for Bitcoins 0.11 tests, there’s a few things that have changed so I doubt any of my test fixes will work for 0.11…not 100% sure tho.
-
When I fixed the 0.9.6 tests I had a look at the code for Bitcoins 0.11 tests, there’s a few things that have changed so I doubt any of my test fixes will work for 0.11…not 100% sure tho.
As long as the data used is the same, it should be ok.