[test] Add getblockchaininfo functional test
[bitcoinplatinum.git] / src / qt / test / uritests.cpp
blob8b53c0d5c7705481e7a5231919b7e11aad338c32
1 // Copyright (c) 2009-2014 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 #include "uritests.h"
7 #include "guiutil.h"
8 #include "walletmodel.h"
10 #include <QUrl>
12 void URITests::uriTests()
14 SendCoinsRecipient rv;
15 QUrl uri;
16 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?req-dontexist="));
17 QVERIFY(!GUIUtil::parseBitcoinURI(uri, &rv));
19 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?dontexist="));
20 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
21 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
22 QVERIFY(rv.label == QString());
23 QVERIFY(rv.amount == 0);
25 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?label=Wikipedia Example Address"));
26 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
27 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
28 QVERIFY(rv.label == QString("Wikipedia Example Address"));
29 QVERIFY(rv.amount == 0);
31 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=0.001"));
32 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
33 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
34 QVERIFY(rv.label == QString());
35 QVERIFY(rv.amount == 100000);
37 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1.001"));
38 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
39 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
40 QVERIFY(rv.label == QString());
41 QVERIFY(rv.amount == 100100000);
43 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=100&label=Wikipedia Example"));
44 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
45 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
46 QVERIFY(rv.amount == 10000000000LL);
47 QVERIFY(rv.label == QString("Wikipedia Example"));
49 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?message=Wikipedia Example Address"));
50 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
51 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
52 QVERIFY(rv.label == QString());
54 QVERIFY(GUIUtil::parseBitcoinURI("bitcoin://175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?message=Wikipedia Example Address", &rv));
55 QVERIFY(rv.address == QString("175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"));
56 QVERIFY(rv.label == QString());
58 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?req-message=Wikipedia Example Address"));
59 QVERIFY(GUIUtil::parseBitcoinURI(uri, &rv));
61 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1,000&label=Wikipedia Example"));
62 QVERIFY(!GUIUtil::parseBitcoinURI(uri, &rv));
64 uri.setUrl(QString("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=1,000.0&label=Wikipedia Example"));
65 QVERIFY(!GUIUtil::parseBitcoinURI(uri, &rv));