aboutsummaryrefslogtreecommitdiff
path: root/src/test/script_tests.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #2740 from constantined/constantinedGavin Andresen2013-10-221-2/+2
|\ | | | | UTF-8 support for JSON-RPC
| * Switch to using raw_utf8constantined2013-07-231-2/+2
| |
* | Inline signature serializerPieter Wuille2013-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of building a full copy of a CTransaction being signed, and then modifying bits and pieces until its fits the form necessary for computing the signature hash, use a wrapper serializer that only serializes the necessary bits on-the-fly. This makes it easier to see which data is actually being hash, reduces load on the heap, and also marginally improves performances (around 3-4us/sigcheck here). The performance improvements are much larger for large transactions, though. The old implementation of SignatureHash is moved to a unit tests, to test whether the old and new algorithm result in the same value for randomly-constructed transactions.
* | included-tests: generate binary data from test files for inclusion into test ↵Cory Fields2013-09-161-25/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | binaries This change moves test data into the binaries rather than reading them from the disk at runtime. Advantages: - Tests become distributable - Cross-compile friendly. Build on one machine and execute in an arbitrary location on another. - Easier testing for backports. Users can verify that tests pass without having to track down corresponding test data. - More trustworthy test results and easier quality assurance as tests make fewer assumptions about their environment. - Tests could theoretically run at client/daemon startup and exit on failure. Disadvantages: - Required 'hexdump' build-dependency. This is a standard bsd tool that should be usable everywhere. It is likely already installed on all build-machines. - Tests can no longer be fudged after build by altering test-data.
* | Bugfix: Since test_bitcoin is being built and run inside src/test/, try ↵Luke Dashjr2013-09-101-1/+1
| | | | | | | | using relative directories from that point
* | Document and test OP_RESERVED weirdnessPeter Todd2013-08-251-2/+6
|/ | | | | | Seems it was forgotten about when IsPushOnly() and the unittests were written. A particular oddity is that OP_RESERVED doesn't count towards the >201 opcode limit unlike every other named opcode.
* CSecret/CKey -> CKey/CPubKey split/refactorPieter Wuille2013-05-301-3/+5
|
* Introduce script verification flagsPieter Wuille2012-11-151-17/+17
| | | | | | | | These flags select features to be enabled/disabled during script evaluation/checking, instead of several booleans passed along. Currently these flags are defined: * SCRIPT_VERIFY_P2SH: enable BIP16-style subscript evaluation * SCRIPT_VERIFY_STRICTENC: enforce strict adherence to pubkey/sig encoding standards.
* change blockchain -> block chain (spelling)Philip Kaufmann2012-10-211-2/+2
| | | | | - Wiki says "block chain" is correct ;) - remove some unneeded spaces I found in the source, while fixing the spelling
* Check for canonical public keys and signaturesPieter Wuille2012-09-211-20/+20
| | | | Only enabled inside tests for now.
* Implement raw transaction RPC callsGavin Andresen2012-07-051-0/+113
| | | | | | Implement listunspent / getrawtransaction / createrawtransaction / signrawtransaction, to support creation and signing-on-multiple-device multisignature transactions.
* Lots more Script unit test cases.Gavin Andresen2012-05-241-1/+4
|
* More CScript unit tests.Gavin Andresen2012-05-241-5/+7
|
* Define TEST_DATA_DIR so unit tests can be run from any current working directoryGavin Andresen2012-04-261-2/+6
|
* Data-drive script evaluation unit tests.Gavin Andresen2012-04-211-0/+150
|
* Fix tests after 38067c18Pieter Wuille2012-02-201-7/+7
|
* Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16).Gavin Andresen2012-01-131-23/+19
|
* Use block times for 'hard' OP_EVAL switchover, and refactored EvalScriptGavin Andresen2011-12-191-19/+19
| | | | | | so it takes a flag for how to interpret OP_EVAL. Also increased IsStandard size of scriptSigs to 500 bytes, so a 3-of-3 multisig transaction IsStandard.
* OP_EVAL implementationGavin Andresen2011-12-191-18/+22
| | | | | | OP_EVAL is a new opcode that evaluates an item on the stack as a script. It enables a new type of bitcoin address that needs an arbitrarily complex script to redeem.
* Rework unit tests so test_bitcoin.cpp does not #include them allGavin Andresen2011-12-191-2/+2
|
* CHECKMULTISIG unit tests.Gavin Andresen2011-08-261-0/+136
|
* Add a file for script testsVegard Nossum2011-08-081-0/+37