mirror of
https://github.com/FlipsideCrypto/dcrd.git
synced 2026-02-06 10:56:47 +00:00
txscript: add stake opcode tests.
This commit is contained in:
parent
e0222e383c
commit
60cbb70c67
@ -2999,5 +2999,32 @@
|
||||
["1 1","IF 0xfe ELSE ENDIF", "NONE", "ERR_RESERVED_OPCODE", "Opcode 0xfe is reserved in executed branch"],
|
||||
["1 1","IF 0xff ELSE ENDIF", "NONE", "ERR_RESERVED_OPCODE", "Opcode 0xff is reserved in executed branch"],
|
||||
|
||||
["0", "IF 0x50{255} ENDIF 1", "NONE", "OK", ">255 opcodes, but RESERVED (0x50) doesn't count towards opcode limit"],
|
||||
|
||||
["0 0x01 0x50", "HASH160 0x14 0x77c33ee1f1892b124f2c9aaed62114c23cffe2da EQUAL", "NONE", "ERR_RESERVED_OPCODE", "OP_RESERVED in P2SH should fail"],
|
||||
["0 0x01 VER", "HASH160 0x14 0xe682277f7669fe986d315d52b56df3d244da11a0 EQUAL", "NONE", "ERR_RESERVED_OPCODE", "OP_VER in P2SH should fail"],
|
||||
|
||||
["STAKE opcodes tests"],
|
||||
|
||||
["SSTX related tests"],
|
||||
["1 1 ADD", "SSTX 2 OP_EQUAL", "NONE", "OK", "SSTX is a NOP"],
|
||||
["DATA_5 DATA_4 0x7a{4}", "SSTX HASH160 DATA_20 0x246bda0f2b9aba6dc78c6259970e45e6af960d46 EQUAL", "NONE", "ERR_EVAL_FALSE", "SSTX almost P2SH"],
|
||||
["1 3 DATA_2 ADD SSTX", "HASH160 DATA_20 0xdcbd287f8a23bf97cea3c77392854976a6feff8f EQUAL", "NONE", "ERR_P2SH_STAKE_OPCODES", "SSTX invalid in a P2SH"],
|
||||
|
||||
["SSGEN related tests"],
|
||||
["1 1 ADD", "SSGEN 2 OP_EQUAL", "NONE", "OK", "SSGEN is a NOP"],
|
||||
["DATA_5 DATA_4 0x7a{4}", "SSGEN HASH160 DATA_20 0x246bda0f2b9aba6dc78c6259970e45e6af960d46 EQUAL", "NONE", "ERR_EVAL_FALSE", "SSGEN almost P2SH"],
|
||||
["1 3 DATA_2 ADD SSGEN", "HASH160 DATA_20 0xdb831e9b4c3e3a3f383bbf397aee000a27ba275e EQUAL", "NONE", "ERR_P2SH_STAKE_OPCODES", "SSGEN invalid in a P2SH"],
|
||||
|
||||
["SSRTX related tests"],
|
||||
["1 1 ADD", "SSRTX 2 OP_EQUAL", "NONE", "OK", "SSRTX is a NOP"],
|
||||
["DATA_5 DATA_4 0x7a{4}", "SSRTX HASH160 DATA_20 0x246bda0f2b9aba6dc78c6259970e45e6af960d46 EQUAL", "NONE", "ERR_EVAL_FALSE", "SSRTX almost P2SH"],
|
||||
["1 3 DATA_2 ADD SSRTX", "HASH160 DATA_20 0xe24f7b2b9b8fae339d3a66ac5ab661c7da97038a EQUAL", "NONE", "ERR_P2SH_STAKE_OPCODES", "SSRTX invalid in a P2SH"],
|
||||
|
||||
["SSTXCHANGE related tests"],
|
||||
["1 1 ADD", "SSTXCHANGE 2 OP_EQUAL", "NONE", "OK", "SSTXCHANGE is a NOP"],
|
||||
["DATA_5 DATA_4 0x7a{4}", "SSTXCHANGE HASH160 DATA_20 0x246bda0f2b9aba6dc78c6259970e45e6af960d46 EQUAL", "NONE", "ERR_EVAL_FALSE", "SSTXCHANGE almost P2SH"],
|
||||
["1 3 DATA_2 ADD SSTXCHANGE", "HASH160 DATA_20 0x346bae114bc3467f3c337f620a3272f4dd417daa EQUAL", "NONE", "ERR_P2SH_STAKE_OPCODES", "SSTXCHANGE invalid in a P2SH"],
|
||||
|
||||
["The End"]
|
||||
]
|
||||
|
||||
@ -283,6 +283,8 @@ func parseExpectedResult(expected string) ([]ErrorCode, error) {
|
||||
return []ErrorCode{ErrDisabledOpcode}, nil
|
||||
case "ERR_RESERVED_OPCODE":
|
||||
return []ErrorCode{ErrReservedOpcode}, nil
|
||||
case "ERR_P2SH_STAKE_OPCODES":
|
||||
return []ErrorCode{ErrP2SHStakeOpCodes}, nil
|
||||
case "ERR_MALFORMED_PUSH":
|
||||
return []ErrorCode{ErrMalformedPush}, nil
|
||||
case "ERR_INVALID_STACK_OPERATION", "ERR_INVALID_ALTSTACK_OPERATION":
|
||||
|
||||
Loading…
Reference in New Issue
Block a user