Changeset View
Changeset View
Standalone View
Standalone View
src/test/transaction_tests.cpp
Show First 20 Lines • Show All 588 Lines • ▼ Show 20 Lines | BOOST_AUTO_TEST_CASE(test_witness) { | ||||
CheckWithFlag(output1, input2, STANDARD_SCRIPT_VERIFY_FLAGS, false); | CheckWithFlag(output1, input2, STANDARD_SCRIPT_VERIFY_FLAGS, false); | ||||
// Normal 2-of-2 multisig | // Normal 2-of-2 multisig | ||||
CreateCreditAndSpend(keystore, scriptMulti, output1, input1, false); | CreateCreditAndSpend(keystore, scriptMulti, output1, input1, false); | ||||
CheckWithFlag(output1, input1, 0, false); | CheckWithFlag(output1, input1, 0, false); | ||||
CreateCreditAndSpend(keystore2, scriptMulti, output2, input2, false); | CreateCreditAndSpend(keystore2, scriptMulti, output2, input2, false); | ||||
CheckWithFlag(output2, input2, 0, false); | CheckWithFlag(output2, input2, 0, false); | ||||
BOOST_CHECK(*output1 == *output2); | BOOST_CHECK(*output1 == *output2); | ||||
UpdateTransaction( | UpdateInput(input1.vin[0], | ||||
input1, 0, | |||||
CombineSignatures(output1->vout[0].scriptPubKey, | CombineSignatures(output1->vout[0].scriptPubKey, | ||||
MutableTransactionSignatureChecker( | MutableTransactionSignatureChecker( | ||||
&input1, 0, output1->vout[0].nValue), | &input1, 0, output1->vout[0].nValue), | ||||
DataFromTransaction(input1, 0), | DataFromTransaction(input1, 0), | ||||
DataFromTransaction(input2, 0))); | DataFromTransaction(input2, 0))); | ||||
CheckWithFlag(output1, input1, STANDARD_SCRIPT_VERIFY_FLAGS, true); | CheckWithFlag(output1, input1, STANDARD_SCRIPT_VERIFY_FLAGS, true); | ||||
// P2SH 2-of-2 multisig | // P2SH 2-of-2 multisig | ||||
CreateCreditAndSpend(keystore, | CreateCreditAndSpend(keystore, | ||||
GetScriptForDestination(CScriptID(scriptMulti)), | GetScriptForDestination(CScriptID(scriptMulti)), | ||||
output1, input1, false); | output1, input1, false); | ||||
CheckWithFlag(output1, input1, 0, true); | CheckWithFlag(output1, input1, 0, true); | ||||
CheckWithFlag(output1, input1, SCRIPT_VERIFY_P2SH, false); | CheckWithFlag(output1, input1, SCRIPT_VERIFY_P2SH, false); | ||||
CreateCreditAndSpend(keystore2, | CreateCreditAndSpend(keystore2, | ||||
GetScriptForDestination(CScriptID(scriptMulti)), | GetScriptForDestination(CScriptID(scriptMulti)), | ||||
output2, input2, false); | output2, input2, false); | ||||
CheckWithFlag(output2, input2, 0, true); | CheckWithFlag(output2, input2, 0, true); | ||||
CheckWithFlag(output2, input2, SCRIPT_VERIFY_P2SH, false); | CheckWithFlag(output2, input2, SCRIPT_VERIFY_P2SH, false); | ||||
BOOST_CHECK(*output1 == *output2); | BOOST_CHECK(*output1 == *output2); | ||||
UpdateTransaction( | UpdateInput(input1.vin[0], | ||||
input1, 0, | |||||
CombineSignatures(output1->vout[0].scriptPubKey, | CombineSignatures(output1->vout[0].scriptPubKey, | ||||
MutableTransactionSignatureChecker( | MutableTransactionSignatureChecker( | ||||
&input1, 0, output1->vout[0].nValue), | &input1, 0, output1->vout[0].nValue), | ||||
DataFromTransaction(input1, 0), | DataFromTransaction(input1, 0), | ||||
DataFromTransaction(input2, 0))); | DataFromTransaction(input2, 0))); | ||||
CheckWithFlag(output1, input1, SCRIPT_VERIFY_P2SH, true); | CheckWithFlag(output1, input1, SCRIPT_VERIFY_P2SH, true); | ||||
CheckWithFlag(output1, input1, STANDARD_SCRIPT_VERIFY_FLAGS, true); | CheckWithFlag(output1, input1, STANDARD_SCRIPT_VERIFY_FLAGS, true); | ||||
} | } | ||||
BOOST_AUTO_TEST_CASE(test_IsStandard) { | BOOST_AUTO_TEST_CASE(test_IsStandard) { | ||||
LOCK(cs_main); | LOCK(cs_main); | ||||
CBasicKeyStore keystore; | CBasicKeyStore keystore; | ||||
CCoinsView coinsDummy; | CCoinsView coinsDummy; | ||||
▲ Show 20 Lines • Show All 172 Lines • Show Last 20 Lines |