dcrd/txscript
Dave Collins 3608e8ab74
txscript: Allow multi opcode test data repeat.
This expands upon the recently added ability to specify repeated
raw and quoted data in the test data short script form syntax to also
add syntax to allow repeated sequences of opcodes and updates several
tests to make use of it.

While here, it also corrects a few tests to actually test what they were
originally intended to test but were not updated correctly for Decred
limit changes.  In particular, the following tests were corrected:

- The negative test that ensures exceeding the max opcode limit via
  CHECKMULTISIG and CHECKMULTISIGVERIFY results in failure
- The positive test that ensures hitting the max opcode limit via
  CHECKMULTISIG and CHECKMULTISIGVERIFY with and without keys succeeds
2018-06-15 12:11:02 -05:00
..
data txscript: Allow multi opcode test data repeat. 2018-06-15 12:11:02 -05:00
bench_test.go txscript: Add benchmark for sighash calculation. 2018-05-01 08:51:38 -05:00
consensus_test.go multi: Break coinbase dep on standardness rules. 2018-05-08 12:49:40 -05:00
consensus.go multi: Correct typos found by misspell. 2018-05-08 21:29:33 -05:00
doc.go multi: Properly capitalize Decred. 2018-03-01 17:41:35 -06:00
engine_test.go txscript: Consolidate tests into txscript package. 2018-04-30 10:34:59 -05:00
engine.go txscript: Remove unused strict multisig flag. 2018-05-15 02:34:22 -05:00
error.go blockchain: Rework to use new db interface. 2016-08-18 15:42:18 -04:00
example_test.go txscript: Consolidate tests into txscript package. 2018-04-30 10:34:59 -05:00
go.mod multi: Define vgo modules. 2018-05-25 15:38:16 -05:00
go.modverify multi: Define vgo modules. 2018-05-25 15:38:16 -05:00
log.go multi: Replace btclog with slog. 2018-05-23 14:22:10 -05:00
opcode_test.go txscript: Remove OP_SMALLDATA 2017-12-29 19:57:26 +00:00
opcode.go txscript: Cleanup and add tests for mod opcode. 2018-06-13 16:53:40 -05:00
README.md multi: Properly capitalize Decred. 2018-03-01 17:41:35 -06:00
reference_test.go txscript: Allow multi opcode test data repeat. 2018-06-15 12:11:02 -05:00
script_test.go txscript: Consolidate tests into txscript package. 2018-04-30 10:34:59 -05:00
script.go txscript: Move sig hash logic to separate file. 2018-04-30 08:54:07 -05:00
scriptbuilder_test.go txscript: Consolidate tests into txscript package. 2018-04-30 10:34:59 -05:00
scriptbuilder.go txscript: export canonicalDataSize. 2018-06-06 18:26:24 +00:00
scriptnum_test.go txscript: Sync upstream makeScriptNum tests. 2016-05-17 16:34:03 -05:00
scriptnum.go Initial Decred Commit. 2016-02-07 14:00:12 -05:00
sigcache_test.go multi: Upstream chainhash abstraction sync 2016-11-16 12:48:40 -06:00
sigcache.go multi: release the mutex earlier 2018-02-13 13:55:02 -06:00
sighash_test.go txscript: Decouple and optimize sighash calc. 2018-05-01 08:51:41 -05:00
sighash.go multi: Correct typos found by misspell. 2018-05-08 21:29:33 -05:00
sign_test.go txscript: Consolidate tests into txscript package. 2018-04-30 10:34:59 -05:00
sign.go travis: add ineffassign linter 2017-12-01 09:14:04 -05:00
stack_test.go multi: Error descriptions are in lower case. 2017-09-08 18:03:59 +02:00
stack.go travis: add gosimple linter 2017-11-20 18:49:55 -06:00
standard_test.go txscript: Consolidate tests into txscript package. 2018-04-30 10:34:59 -05:00
standard.go multi: Break coinbase dep on standardness rules. 2018-05-08 12:49:40 -05:00

txscript

Build Status ISC License GoDoc

Package txscript implements the Decred transaction script language. There is a comprehensive test suite.

This package has intentionally been designed so it can be used as a standalone package for any projects needing to use or validate Decred transaction scripts.

Decred Scripts

Decred provides a stack-based, FORTH-like language for the scripts in the Decred transactions. This language is not turing complete although it is still fairly powerful.

Installation and Updating

$ go get -u github.com/decred/dcrd/txscript

Examples

License

Package txscript is licensed under the copyfree ISC License.