Matt Corallo
13 years ago
5 changed files with 106 additions and 0 deletions
@ -0,0 +1,11 @@
@@ -0,0 +1,11 @@
|
||||
#include <QTest> |
||||
#include <QObject> |
||||
|
||||
#include "urltests.h" |
||||
|
||||
// This is all you need to run all the tests
|
||||
int main(int argc, char *argv[]) |
||||
{ |
||||
URLTests test1; |
||||
QTest::qExec(&test1); |
||||
} |
@ -0,0 +1,68 @@
@@ -0,0 +1,68 @@
|
||||
#include "urltests.h" |
||||
#include "../guiutil.h" |
||||
#include "../walletmodel.h" |
||||
|
||||
#include <QUrl> |
||||
|
||||
/*
|
||||
struct SendCoinsRecipient |
||||
{ |
||||
QString address; |
||||
QString label; |
||||
qint64 amount; |
||||
}; |
||||
*/ |
||||
|
||||
void URLTests::urlTests() |
||||
{ |
||||
SendCoinsRecipient rv; |
||||
QUrl url; |
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?req-dontexist=")); |
||||
QVERIFY(!GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?dontexist=")); |
||||
QVERIFY(GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W")); |
||||
QVERIFY(rv.label == QString()); |
||||
QVERIFY(rv.amount == 0); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?label=Wikipedia Example Address")); |
||||
QVERIFY(GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W")); |
||||
QVERIFY(rv.label == QString("Wikipedia Example Address")); |
||||
QVERIFY(rv.amount == 0); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=0.001")); |
||||
QVERIFY(GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W")); |
||||
QVERIFY(rv.label == QString()); |
||||
QVERIFY(rv.amount == 100000); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1.001")); |
||||
QVERIFY(GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W")); |
||||
QVERIFY(rv.label == QString()); |
||||
QVERIFY(rv.amount == 100100000); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=100&label=Wikipedia Example")); |
||||
QVERIFY(GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W")); |
||||
QVERIFY(rv.amount == 10000000000); |
||||
QVERIFY(rv.label == QString("Wikipedia Example")); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?message=Wikipedia Example Address")); |
||||
QVERIFY(GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W")); |
||||
QVERIFY(rv.label == QString()); |
||||
QVERIFY(rv.label == QString()); |
||||
|
||||
// We currently dont implement the message paramenter (ok, yea, we break spec...)
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?req-message=Wikipedia Example Address")); |
||||
QVERIFY(!GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1,000&label=Wikipedia Example")); |
||||
QVERIFY(!GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
|
||||
url.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1,000.0&label=Wikipedia Example")); |
||||
QVERIFY(!GUIUtil::parseBitcoinURL(&url, &rv)); |
||||
} |
Loading…
Reference in new issue