PIVX Core
5.6.99
P2P Digital Currency
src
qt
test
uritests.cpp
Go to the documentation of this file.
1
// Copyright (c) 2009-2014 The Bitcoin developers
2
// Copyright (c) 2017-2019 The PIVX Core developers
3
// Distributed under the MIT software license, see the accompanying
4
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
5
6
#include "
uritests.h
"
7
8
#include "
guiutil.h
"
9
#include "
walletmodel.h
"
10
11
#include <QUrl>
12
13
void
URITests::uriTests
()
14
{
15
SendCoinsRecipient
rv;
16
QUrl uri;
17
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?req-dontexist="
));
18
QVERIFY(!
GUIUtil::parseBitcoinURI
(uri, &rv));
19
20
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?dontexist="
));
21
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
22
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
23
QVERIFY(rv.
label
== QString());
24
QVERIFY(rv.
amount
== 0);
25
26
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?label=Some Example Address"
));
27
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
28
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
29
QVERIFY(rv.
label
== QString(
"Some Example Address"
));
30
QVERIFY(rv.
amount
== 0);
31
32
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?amount=0.001"
));
33
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
34
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
35
QVERIFY(rv.
label
== QString());
36
QVERIFY(rv.
amount
== 100000);
37
38
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?amount=1.001"
));
39
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
40
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
41
QVERIFY(rv.
label
== QString());
42
QVERIFY(rv.
amount
== 100100000);
43
44
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?amount=100&label=Some Example"
));
45
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
46
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
47
QVERIFY(rv.
amount
== 10000000000LL);
48
QVERIFY(rv.
label
== QString(
"Some Example"
));
49
50
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?message=Some Example Address"
));
51
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
52
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
53
QVERIFY(rv.
label
== QString());
54
55
QVERIFY(
GUIUtil::parseBitcoinURI
(
"pivx://D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?message=Some Example Address"
, &rv));
56
QVERIFY(rv.
address
== QString(
"D72dLgywmL73JyTwQBfuU29CADz9yCJ99v"
));
57
QVERIFY(rv.
label
== QString());
58
59
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?req-message=Some Example Address"
));
60
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
61
62
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?amount=1,000&label=Some Example"
));
63
QVERIFY(
GUIUtil::parseBitcoinURI
(uri, &rv));
64
65
uri.setUrl(QString(
"pivx:D72dLgywmL73JyTwQBfuU29CADz9yCJ99v?amount=1,000.0&label=Some Example"
));
66
QVERIFY(!
GUIUtil::parseBitcoinURI
(uri, &rv));
67
}
SendCoinsRecipient
Definition:
walletmodel.h:52
SendCoinsRecipient::label
QString label
Definition:
walletmodel.h:63
SendCoinsRecipient::amount
CAmount amount
Definition:
walletmodel.h:76
SendCoinsRecipient::address
QString address
Definition:
walletmodel.h:62
URITests::uriTests
void uriTests()
Definition:
uritests.cpp:13
guiutil.h
GUIUtil::parseBitcoinURI
bool parseBitcoinURI(const QUrl &uri, SendCoinsRecipient *out)
Definition:
guiutil.cpp:156
uritests.h
walletmodel.h
Generated on Wed Apr 2 2025 00:40:32 for PIVX Core by
1.9.1