Changeset View
Changeset View
Standalone View
Standalone View
src/qt/test/paymentservertests.cpp
Show First 20 Lines • Show All 181 Lines • ▼ Show 20 Lines | void PaymentServerTests::paymentServerTests() { | ||||
r.paymentRequest.parse(byteArray); | r.paymentRequest.parse(byteArray); | ||||
// Ensure the request is initialized | // Ensure the request is initialized | ||||
QVERIFY(r.paymentRequest.IsInitialized()); | QVERIFY(r.paymentRequest.IsInitialized()); | ||||
// compares -9223372036854775808 < GetTime() == true (treated as expired | // compares -9223372036854775808 < GetTime() == true (treated as expired | ||||
// payment request) | // payment request) | ||||
QCOMPARE(PaymentServer::verifyExpired(r.paymentRequest.getDetails()), true); | QCOMPARE(PaymentServer::verifyExpired(r.paymentRequest.getDetails()), true); | ||||
// Test BIP70 DoS protection: | // Test BIP70 DoS protection: | ||||
uint8_t randData[BIP70_MAX_PAYMENTREQUEST_SIZE + 1]; | auto randdata = | ||||
GetRandBytes(randData, sizeof(randData)); | FastRandomContext().randbytes(BIP70_MAX_PAYMENTREQUEST_SIZE + 1); | ||||
// Write data to a temp file: | // Write data to a temp file: | ||||
QTemporaryFile tempFile; | QTemporaryFile tempFile; | ||||
tempFile.open(); | tempFile.open(); | ||||
tempFile.write((const char *)randData, sizeof(randData)); | tempFile.write((const char *)randdata.data(), randdata.size()); | ||||
tempFile.close(); | tempFile.close(); | ||||
// compares 50001 <= BIP70_MAX_PAYMENTREQUEST_SIZE == false | // compares 50001 <= BIP70_MAX_PAYMENTREQUEST_SIZE == false | ||||
QCOMPARE(PaymentServer::verifySize(tempFile.size()), false); | QCOMPARE(PaymentServer::verifySize(tempFile.size()), false); | ||||
// Payment request with amount overflow (amount is set to 21000001 BCH): | // Payment request with amount overflow (amount is set to 21000001 BCH): | ||||
data = DecodeBase64(paymentrequest5_cert2_BASE64); | data = DecodeBase64(paymentrequest5_cert2_BASE64); | ||||
byteArray = QByteArray((const char *)data.data(), data.size()); | byteArray = QByteArray((const char *)data.data(), data.size()); | ||||
r.paymentRequest.parse(byteArray); | r.paymentRequest.parse(byteArray); | ||||
Show All 16 Lines |