Commit graph

947 commits

Author SHA1 Message Date
Daniel Cousens
abf922e808 tests: less ambiguous naming, fix exception check 2016-12-14 09:05:58 +11:00
Daniel Cousens
ac4b9d5c43 stealth: use \+ to represent point addition 2016-12-11 12:23:35 +11:00
Daniel Cousens
d3da936adc stealth: add randomly 2016-12-11 12:23:35 +11:00
Daniel Cousens
6f47bc4d70 stealth: d is not involved in the receiver private key 2016-12-11 12:23:35 +11:00
Daniel Cousens
b4062d56d1 stealth: add dual key example 2016-12-11 12:23:35 +11:00
Daniel Cousens
1304527c1d stealth: clarify super simply 2016-12-11 12:23:35 +11:00
Thomas Kerin
dec21317e7 Add test checking only old serialization is used in Transaction.hashForSignature 2016-12-10 11:17:53 +11:00
Thomas Kerin
bec7f690ce Rename __hasWitnesses -> hasWitnesses, and add tests 2016-12-08 09:11:13 +11:00
Daniel Cousens
e92ac1d01b pass standard 2016-12-01 01:07:21 +11:00
Daniel Cousens
1c68e41562 move BIP32 example to own file 2016-12-01 01:07:21 +11:00
Daniel Cousens
11850cc1a5 stealth: add stealth child key recover example 2016-12-01 01:07:21 +11:00
Daniel Cousens
03dc569236 tests: add test for setWitness 2016-11-15 10:06:18 +11:00
Thomas Kerin
0696ca95b6 Script: add {compile,decompile}PushOnly 2016-11-14 15:13:12 +11:00
Daniel Cousens
66ad980122 tests: when importing, allow no witness importing for plain hex comparison 2016-11-14 15:05:30 +11:00
Daniel Cousens
de5cf261e6 tests: add getId/getHash tests due to default segwit serialization (failing) 2016-11-14 15:05:30 +11:00
Daniel Cousens
0c198ffa6a tests: merge witness fixtures with valid transactions, reverse reversed hashs (failing) 2016-11-14 15:05:30 +11:00
Daniel Cousens
a1755a43c0 tests: add witness support to fromRaw 2016-11-14 15:05:30 +11:00
Daniel Cousens
5150e3c027 tests: enforce witness transactions use legacy txId 2016-11-14 15:05:30 +11:00
Daniel Cousens
87269fe73e tests: move transactionVersion into toBuffer 2016-11-14 15:05:30 +11:00
Daniel Cousens
dfcb04c9b4 tests: add coinbase flag to each transaction fixture 2016-11-14 15:05:30 +11:00
Thomas Kerin
95059df96a Update vectors with value of UTXO 2016-11-14 11:22:22 +11:00
Thomas Kerin
6d4c4d4cf2 test/fixtures/transaction.json
New fixtures for Witness
2016-11-14 11:22:22 +11:00
Daniel Cousens
bc4297ce3c tests: add assertion for witness default to EMPTY_WITNESS 2016-11-14 11:22:22 +11:00
Thomas Kerin
3f731d090a Test that parsing a transaction with superfluous witness data leads to an error 2016-11-14 11:22:22 +11:00
Thomas Kerin
035ec47868 Better test vectors for witness serialization (available on testnet) 2016-11-14 11:22:22 +11:00
Daniel Cousens
c1d6a5c0d7 add witness core transaction tests, re-ordered to be testable 2016-11-14 11:22:22 +11:00
Daniel Cousens
fb6f157e8c tests/core: remove unverifiable tests 2016-11-14 11:22:22 +11:00
Daniel Cousens
b60882a85e tests: fromBuffer/toBuffer, import export each set of fixtures 2016-11-14 11:22:22 +11:00
Daniel Cousens
5c2fdb6043 Transaction: add Witness serialization and hashForWitnessV0 2016-11-14 11:22:22 +11:00
Daniel Cousens
e8b00d63d6 tests: add minimall encoded 0-length buffer fixture 2016-11-14 11:22:07 +11:00
Daniel Cousens
f0db59fa8e tests: amend TransactionBuilder fixture to have non-absurd fee rate 2016-11-12 12:53:53 +01:00
Daniel Cousens
62389ed247 TransactionBuilder: change to ABSURD_FEERATE, not ABSURD_FEE 2016-11-12 12:53:53 +01:00
Daniel Cousens
e835f1fe95 TransactionBuilder: add fee safety 2016-11-12 12:53:53 +01:00
Daniel Cousens
11079bfafb tests: use hardcoded fixture instead of relying on fixture[0] 2016-11-09 12:09:01 +11:00
Daniel Cousens
9db9763221 tests: add script.*.*.decode tests 2016-11-04 07:23:02 +11:00
Daniel Cousens
0c67f5e585 templates: add toJSON for clearer error message 2016-11-04 07:23:02 +11:00
Daniel Cousens
ce5babde83 templates: fix nullData return value 2016-11-04 07:23:02 +11:00
Daniel Cousens
69d8e9ed9e move templates to templates/index.js 2016-11-04 07:23:02 +11:00
Daniel Cousens
39897cacd5 integration: update to new script encode/decode 2016-11-04 07:23:02 +11:00
Daniel Cousens
a5e65ab977 tests: remove tests for missing witnessScriptHash.input.encode 2016-11-04 07:23:02 +11:00
Daniel Cousens
d9fa39a2cc scripts: extract all scripts to encode/decode/check style 2016-11-04 07:23:02 +11:00
Thomas Kerin
27b48e8aa2 Add methods to decode information from output scripts 2016-11-02 10:58:45 +11:00
Daniel Cousens
405c005802 tests: rename description to path 2016-10-25 11:36:08 +11:00
Daniel Cousens
0b3a042ca2 HDNode: simplify path derivation 2016-10-25 11:36:08 +11:00
Daniel Cousens
1247061d05 tests: v.depth was added to fixtures 2016-10-25 11:36:08 +11:00
Daniel Cousens
5e2e72dd7a tests: add leading zero test fixture 2016-10-25 11:36:08 +11:00
Daniel Cousens
b03ce64698 tests: add leading zero HDNode fixture per #673 2016-10-25 11:36:08 +11:00
Daniel Cousens
04a227fab1 tests: rework HDNode tests, consistent *Base58 usage, check index/depth too 2016-10-25 11:36:08 +11:00
Daniel Cousens
7f77357c12 tests: rm unused data, re-add missing tests 2016-10-25 11:36:08 +11:00
Braydon Fuller
078318094d test: include derivation test when private key has leading zeros 2016-10-21 13:33:04 +11:00
Daniel Cousens
4faa0ce679 _blockchain: a social experiment 2016-10-18 17:45:37 +11:00
Thomas Kerin
ddedb574a3 hdnode: add test cases exercising fromBuffer 2016-10-18 15:59:47 +11:00
Daniel Cousens
b65e47bbae integration: break up into more re-usable unspents 2016-10-13 18:05:02 +11:00
Daniel Cousens
52bcfe72be integration: return funds to our faucet 2016-10-13 18:05:02 +11:00
Daniel Cousens
e10a23fb3e integration: avoid multiple faucet calls 2016-10-13 18:05:02 +11:00
Daniel Cousens
ebaf1496e1 tests/integration: use our own faucet keyPair 2016-10-13 18:05:02 +11:00
Thomas Kerin
7b1167708a Transaction and block versions are signed integers 2016-10-13 09:29:03 +11:00
Daniel Cousens
3de754a9a2 TransactionBuilder: remove hashTypes inconsistency issues, resolves #642 2016-10-13 00:55:19 +11:00
Daniel Cousens
30ba4d620b tests: add failing TransactionBuilder multiple hash types test 2016-10-13 00:55:19 +11:00
Daniel Cousens
f07ccabe6e tests: flatten construct function 2016-10-13 00:55:19 +11:00
Daniel Cousens
5dcf38c0c5 HDNode: clearer error for bad path type 2016-10-12 13:15:54 +11:00
Daniel Cousens
3504ccfa3c tests: test what was removed in #460 2016-10-10 13:01:51 +11:00
Daniel Cousens
17377381c4 TransactionBuilder: if prevOutScript is defined, but not signable, try 1 last time 2016-10-09 22:04:32 +11:00
Daniel Cousens
ecc6d45a7e types: add Satoshi 2016-10-07 14:25:44 +11:00
Daniel Cousens
9b473ca57b tests/integration: bump timeouts to 30s each 2016-10-07 11:37:44 +11:00
Daniel Cousens
29a865788d use varuint-bitcoin 2016-10-07 10:55:34 +11:00
Daniel Cousens
de6671ecaa rm integration tests 2016-10-06 21:41:10 +11:00
Daniel Cousens
7cdabef954 ecdsa: remove unused functions 2016-10-06 21:40:42 +11:00
Daniel Cousens
87cb018466 rm message module 2016-10-06 21:40:42 +11:00
Daniel Cousens
fd40232147 package: remove buffer-compare/buffer-equals 2016-10-06 21:31:10 +11:00
Daniel Cousens
ed093aec69 stealth: more explicit inner variable names 2016-10-06 14:07:08 +11:00
Daniel Cousens
b91cfcf196 package: update to typeforce 1.8.7 2016-10-06 12:34:11 +11:00
Daniel Cousens
4ae06003c4 Merge pull request #638 from bitcoinjs/minpush
script: always compile in a minimaldata compliant way
2016-10-05 19:31:52 +11:00
Daniel Cousens
c1570f8056 script: always compile in a minimaldata compliant way 2016-09-29 13:51:17 +10:00
Daniel Cousens
76c7c77311 tests: add failing test for #633 2016-09-28 01:23:37 +10:00
Daniel Cousens
418c315c78 tests: clarify multisig edge case for easier debugging 2016-09-28 00:46:14 +10:00
Daniel Cousens
ae63ae1131 tests: change error thrown for consistency with multisig 2016-09-28 00:20:49 +10:00
Daniel Cousens
d5eec5df70 tests: fix invalid test description 2016-09-28 00:20:49 +10:00
Daniel Cousens
fdb0ceeeb5 testing: rename cltvCheckSigInput to cltvCheckSigOutput 2016-09-27 23:45:25 +10:00
Daniel Cousens
fd0be5e5b8 tests: add missing parenthesis 2016-09-26 16:32:16 +10:00
Daniel Cousens
87f0d33a01 tests: script-number, not script 2016-09-15 00:19:14 +10:00
Daniel Cousens
4cfe950403 tests: adhere to camelCase 2016-09-14 22:37:21 +10:00
Daniel Cousens
17c6ff62a0 bufferutils: fix pushDataInt output 2016-08-31 16:01:36 +10:00
Daniel Cousens
1f62235c38 tests: add failing script decode 2016-08-31 16:01:36 +10:00
Daniel Cousens
d96b7036fb tests: add BIP62 compliance tests 2016-08-31 16:01:36 +10:00
Daniel Cousens
e74b882e54 tests: improved readability for stealth address code 2016-08-17 13:11:01 +10:00
Daniel Cousens
da6aea4039 Merge pull request #615 from bitcoinjs/hltc
Add another CLTV test,  isolate tests and cleanup
2016-08-17 11:07:40 +10:00
Daniel Cousens
f2ecbeb90f tests/integration: separate crypto tests 2016-08-13 11:42:53 +10:00
Daniel Cousens
ddea2d2296 tests/integration: separate CLTV tests, add failing expiry (in future) 2016-08-13 11:42:16 +10:00
Daniel Cousens
fa54ba4f82 tests/transaction: add test for target Buffer 2016-08-10 11:44:09 +10:00
Daniel Cousens
fcb6ac9de6 tests: avoid superfluous ECPair creation 2016-07-22 13:34:23 +10:00
Daniel Cousens
817e10513c tests: cleanup 2016-07-22 13:31:34 +10:00
Daniel Cousens
20a026aefe scripts/tests: add witness* scripts 2016-07-12 12:32:29 +10:00
Daniel Cousens
39fd34a947 tests/types: avoid unnecessary join 2016-07-12 12:32:29 +10:00
Daniel Cousens
148e9fc7a8 Merge branch 'master' into codesep 2016-06-30 16:13:08 +10:00
Daniel Cousens
6faeae397f TxBuilder: add setVersion 2016-06-22 14:57:33 +10:00
Daniel Cousens
4898cc7b67 tests: add tests for Transaction.hashForSignature 2016-06-22 14:45:49 +10:00
Daniel Cousens
07628ff034 tests: avoid deepEqual, hex is easier to debug 2016-06-22 13:58:53 +10:00
Daniel Cousens
d58e09a3a7 Block: add checkMerkleRoot 2016-05-05 16:51:33 +10:00
Daniel Cousens
ea2a7449ad tests: add isCoinbase tests and flags to fixtures 2016-05-03 21:51:30 +10:00
Daniel Cousens
31923197ea tests: add more complex integration transaction 2016-04-22 17:08:45 +10:00
Daniel Cousens
9db67bb3b1 Cleanup for #540 (#551)
* Txbuilder: early exit as soon as possible

* Txbuilder: prefer function declaration over variable

* TxBuilder: extract extractFromOutputScript

* TxBuilder: extract buildFromInputData
2016-04-08 12:23:32 +10:00
Daniel Cousens
aae5db6a59 ECPair/HDNode: missing version from list is Unknown, not Invalid 2016-02-25 13:48:29 +11:00
Daniel Cousens
bdb0dd4a17 HDNode/tests: add testing for invalid network version from networks list 2016-02-25 13:41:35 +11:00
Daniel Cousens
9e32c892ef ECPair/tests: always use WIF for error throwing 2016-02-25 13:26:05 +11:00
Karel Bilek
6a74eb6993 Renaming Path to Bip32Path, invalid to fixtures
Only thing I haven't been able to do is to add "undefined" to fixtures. So I could not properly test
that node.derivePath() properly fails as it should. However, I added "null" there, and "null" and "undefined"
behave in similar way in JavaScript, so that should catch that.
2016-02-14 16:12:16 +01:00
Karel Bilek
d2b43f1dfe Validating path
Again through typeforce
2016-02-13 23:25:30 +01:00
Karel Bilek
755eac5bbd Doubling down on the path testing
Maybe overdoing it a bit :)
2016-02-12 12:37:30 +01:00
Karel Bilek
7a61526705 Testing path derivation
I am taking description field for the path.
2016-02-12 12:37:29 +01:00
Karel Bilek
4a72001335 Typechecking indexes
As a consequence, it will not allow accidentally double-hardened indexes.

It also won't allow strings or forgotten parameters.
2016-02-06 17:57:11 +01:00
Karel Bilek
bfd294c31e Adding tests for isNeutered 2016-02-05 20:29:52 +01:00
Karel Bilek
3df2976e2c Using private key for testing neuterization
To test removing private information, it's probably better to start with them :)
2016-02-05 20:26:23 +01:00
Daniel Cousens
1771067dfc tests: fix standard error, reword descriptions 2016-02-05 14:16:56 +11:00
Ruben de Vries
7c7537fc57 use typeforce >= 1.6.2 which allows us to use typeforce.TfTypeError with a custom error message. 2016-02-02 14:04:37 +01:00
Ruben de Vries
ce21c99b43 add failing test case for hash160/256 typeforce check 2016-02-02 13:31:54 +01:00
Ruben de Vries
0e1424c2cb fixed issues with integration tests that use the faucet 2016-01-28 11:27:34 +01:00
Ruben de Vries
b601f50c70 fixed another test where TX was signed before locktime was set 2016-01-28 16:11:49 +11:00
JP Richardson
682ba7e549 Merge pull request #530 from bitcoinjs/lesscomp
address: fix compiled assumption for fromOutputScript
2016-01-27 22:50:05 -06:00
Daniel Cousens
67da1b30e3 address: fix compiled assumption for fromOutputScript 2016-01-28 15:35:57 +11:00
JP Richardson
4ee194e840 Merge pull request #507 from bitcoinjs/locktime
txbuilder: add setLockTime
2016-01-27 08:29:00 -06:00
Daniel Cousens
f3913516ca Merge pull request #509 from bitcoinjs/pow
Add Block proof-of-work validation function
2016-01-28 01:00:17 +11:00
Daniel Cousens
9a62ab600f tests: update integration tests to use setLockTime 2016-01-28 00:56:58 +11:00
Daniel Cousens
8a37c1193a tests: add signature invalidation test for setLockTime 2016-01-28 00:55:45 +11:00
Daniel Cousens
6c0745adce TxBuilder: add setLockTime 2016-01-28 00:55:44 +11:00
Ruben de Vries
ccec864785 locktime and version were set too late in test scenario and not included when signing (the test scenario). 2016-01-26 17:13:07 +01:00
Daniel Cousens
35a2a6ba1e tests/integration: increase multisig timeout 2016-01-06 13:14:36 +11:00
Daniel Cousens
a5f1994f86 tests/integration: remove redundant check 2016-01-06 13:10:57 +11:00
Daniel Cousens
f9f41addda tests/integration: throw if no unspent is given 2016-01-06 13:01:43 +11:00
Daniel Cousens
755c344e16 tests/integration: re-broadcast input tx to avoid missing inputs error 2016-01-06 12:46:02 +11:00
Daniel Cousens
382409c575 tests: rm unused fixtures 2016-01-06 10:00:10 +11:00
Daniel Cousens
b6d986dd10 tests/integration: amend lockTime example to allow redemption, add redepemtion examples 2016-01-05 14:52:56 +11:00
Daniel Cousens
059f48b0c4 script_number: add impl/tests 2016-01-05 01:59:58 +11:00
Daniel Cousens
e4ba88e54f block: rename verifyPow to checkProofOfWork 2016-01-04 12:49:33 +11:00
Daniel Cousens
bac700f52c block: use buffer, faster, verified 2016-01-04 12:49:33 +11:00
Daniel Cousens
86b51b2d62 add Block.calculateTarget, use Buffer comparison rather than bigi 2016-01-04 12:49:33 +11:00
Daniel Cousens
26ccb43047 block: add Block.prototype.verifyPow 2016-01-04 12:49:33 +11:00
Daniel Cousens
15227d39bf tests: add more test fixtures for blocks 2016-01-04 12:49:33 +11:00
Daniel Cousens
b077d7089d tests/integration: change hodlDate to T+2 hours 2015-12-22 14:17:41 +11:00
Daniel Cousens
b5d1b4a0da tests/integration: s/message/transaction 2015-12-22 14:13:45 +11:00
Daniel Cousens
cab3022719 add OP_CHECKLOCKTIMEVERIFY and integration tests 2015-12-22 14:13:45 +11:00
Daniel Cousens
07cf0bd057 tests/integration: use actual=expected consistently for asserts 2015-12-22 14:03:58 +11:00
Daniel Cousens
50f381fb5c tests: add non-BIP62 compliant is*Output fixtures 2015-11-25 19:19:21 +11:00
Daniel Cousens
dca7a38362 tests: remove unnecessary branch, fix bscript.fromHex undefined 2015-11-25 19:19:21 +11:00
Kirill Fomichev
5de6818fcb Fix TransactionBuilder.addOutput 2015-11-24 08:18:16 +03:00
Daniel Cousens
74fd5ae71d tests: loop faucet until an unspent is given 2015-11-06 11:01:28 +11:00
Daniel Cousens
a686817f3c tests: add m/n is data failing tests 2015-10-02 12:36:51 +10:00
Kirill Fomichev
eae8bcf676 fix isMultisigOutput 2015-10-01 23:12:38 +03:00
Daniel Cousens
0b4c67406f use [].reverse over prototype 2015-09-27 23:49:29 +10:00
Daniel Cousens
5c1c4589c0 remove use of buffer-reverse 2015-09-27 23:30:06 +10:00
Daniel Cousens
731a31ecba use buffer-reverse 2015-09-25 17:49:05 +10:00