Commit Graph

719 Commits

Author SHA1 Message Date
Braydon Fuller 37b5d3d588 Merge pull request #1264 from fanatid/fix/sortOutputs
fix Transaction.sortOutputs
2015-06-18 11:06:20 -04:00
Brandon Roberts a53bd10f42 test explicitly passed invalid network 2015-06-11 08:05:35 -07:00
Ivan Socolsky f638b5bd6e test fee per kb 2015-06-10 22:28:15 -03:00
Brandon Robertz a38c0c2d93 modularize network version check/tests issues/1265 2015-06-09 14:06:22 -07:00
Kirill Fomichev b9d52b79c8 fix Transaction.sortOutputs 2015-06-05 21:11:40 +03:00
mpolci 0d2784eb1e created test to verify correct network initialization in PrivateKey.fromJSON() 2015-06-05 01:51:27 -07:00
Braydon Fuller a03e6b9385 Add base option for BN.fromString 2015-05-27 14:11:43 -04:00
Manuel Araoz e2542866d1 expose BN.fromString problem 2015-05-27 15:01:26 -03:00
Patrick Nagurny 4c1ba674c5 Merge pull request #1248 from braydonf/bug/misleading-error
Fixes bug with misleading error with getSerializationError. Closes #1236
2015-05-26 11:32:51 -06:00
Braydon Fuller ffe6b449cb Check the compressed property in Signature.fromCompact tests. 2015-05-26 01:15:11 -04:00
Braydon Fuller a5cd5a1407 Added support for uncompressed public keys to Signature.fromCompact 2015-05-25 23:57:46 -04:00
Braydon Fuller 7719d1bfd4 Add test with uncompressed pubkey compact signature. 2015-05-25 23:31:42 -04:00
Braydon Fuller ee651df635 Added test for null input for transaction.verify() 2015-05-23 20:28:33 -04:00
David de Kloet 3ace170ac5 Ignore fee error when unspent output is actually negative, rather than already when the check for negative unspent output is disabled. 2015-05-23 20:13:53 -04:00
David de Kloet ac2fbe2777 When disableMoreOutputThanInput is set for getSerializationError, also disable the fee checks as the concept of a fee is meaningless when unspent output value is negative. This also allows for removing the opts from buildSkipTest again and simplifying the skip test for disableMoreOutputThanInput. 2015-05-23 20:13:53 -04:00
David de Kloet dc07788e53 Put )); on a separate line. 2015-05-23 20:13:53 -04:00
David de Kloet 6729b38944 Expect the correct error to be thrown. 2015-05-23 20:13:53 -04:00
David de Kloet 8c5b2c851b When checking for transaction serialization errors, check the output amount before checking fee errors. Added a test for it and also improved buildSkipTest by specifying which error to expect and using it for some tests where it wasn't used yet. 2015-05-23 20:13:53 -04:00
Manuel Araoz 74e285dadd fix imports for block tests 2015-05-23 16:44:11 -03:00
Manuel Araoz 6e49ed0e40 reorganize block test files 2015-05-20 14:42:48 -03:00
Braydon Fuller b53f249d02 Merge pull request #1235 from maraoz/transaction/clearOutputs
add Transaction#clearOutputs
2015-05-18 16:24:02 -04:00
Braydon Fuller 85dd29e576 Merge pull request #1227 from fanatid/fix/inBrowser
remove inBrowser
2015-05-18 16:22:14 -04:00
Braydon Fuller 1c8ebc0eb5 Simplify version guard
- Updated index.js test to run in Node.js and browsers
- Simplified message and clarified case where two of the same versions would conflict
2015-05-18 15:00:45 -04:00
Braydon Fuller 7723dd302a Added test case for an empty OP_RETURN for script.getData() Fixes #1237 2015-05-18 10:39:15 -04:00
Kirill Fomichev 7e3993578c improve guard for prevent more than one instance of bitcore 2015-05-17 10:09:18 +03:00
Manuel Araoz 8a13a22baf add Transaction#clearOutputs 2015-05-15 15:29:05 -03:00
Braydon Fuller 458abe069e Fixed issue with handling invalid output scripts
- Changed toObject serialization to always use a hexa string for a script
- Updated inspect method to handle a null script
- Roundtrip toObject/fromObject with an invalid script
- Additional test coverage for Output
2015-05-14 01:50:14 -04:00
David de Kloet e294505486 Some transaction tests were not run because of the way they were built. Fixed this so they are run and fixed one test that still assumed the dust limit at 5460 instead of 546. 2015-05-13 09:14:00 +02:00
Patrick Nagurny de078a40d3 If output.script is InvalidBuffer, return null instead of throwing error 2015-05-12 17:23:56 -04:00
Braydon Fuller a02258dfba Merge pull request #1218 from maraoz/docs/pubkeys
improve PublicKey docs and fix #1215
2015-05-12 13:31:34 -04:00
Eric Martindale 8e7528d13f Merge pull request #1219 from braydonf/coverage/transaction
Added coverage to transaction and fixed bug with serialization check.
2015-05-11 17:48:50 -04:00
Eric Martindale 993125428e Merge pull request #1213 from braydonf/bug/is-fully-signed
Fixed script.isPublicKeyHashIn bug with variable length signatures.
2015-05-11 15:12:44 -04:00
Braydon Fuller 53b6171547 Added coverage to transaction and fixed bug with serialization check. 2015-05-11 13:39:53 -04:00
Manuel Araoz 951a07c011 fix PublicKey.toObject 2015-05-11 12:24:45 -03:00
David de Kloet b1e54101d3 Call the parent error of the fee errors FeeError for backwards compatibility. 2015-05-10 00:38:56 +02:00
David de Kloet 8da9c4a44a Give the 3 fee errors a common parent error. 2015-05-10 00:32:27 +02:00
David de Kloet d1eb190626 Introduce different kinds of FeeError to distinguish the different cases. Fix the issue uncovered by this, which is that getFee might not be the actual fee, but only an estimate, if a change address is specified but there isn't enough to pay a fee and have change. 2015-05-09 21:06:40 +02:00
David de Kloet 16dc489b08 Make sure a specified transaction fee and outputs add up to the sum of the inputs. Don't ignore the fee when it's explicitly specified. 2015-05-09 18:44:26 +02:00
Braydon Fuller d8e90685f4 Fixed script.isPublicKeyHashIn bug with variable length signatures.
- DER encoded signatures have a max length of 72 bytes, however a minimum size isn't defined.
- R and S values can have arbitrary lengths
- For more information: https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki#der-encoding
2015-05-08 22:09:42 -04:00
Braydon Fuller b688334bf3 Added test case for zero in isNaturalNumber tests. 2015-05-06 13:37:17 -04:00
Braydon Fuller f8ea7e39cc Included satoshis check during checked serialization. 2015-04-30 13:23:44 -04:00
Braydon Fuller cd12164fae Added test coverage to transaction.verify 2015-04-30 12:09:59 -04:00
Braydon Fuller 3d447ded79 Update bn.js to 2.0.4 to handle 53 bit precision number input. 2015-04-30 11:20:09 -04:00
Manuel Araoz a018a23b6b fix bug in recognizing p2sh input scripts 2015-04-30 03:24:15 -03:00
Manuel Araoz bbd48f868d remove comment 2015-04-29 19:47:35 -03:00
Manuel Araoz db6234b500 remove duplicate code, increase coverage 2015-04-29 19:45:41 -03:00
Manuel Araoz d556a0c33d fix regressions 2015-04-29 18:55:42 -03:00
Manuel Araoz dfc075e5d1 fix block parsing problem 2015-04-29 17:29:33 -03:00
Manuel Araoz 270413a655 add simpler test that fails 2015-04-29 15:54:41 -03:00
Manuel Araoz 722eddb894 add test that exposes bug 2015-04-29 15:31:46 -03:00
Braydon Fuller a03daab866 Merge pull request #1196 from maraoz/script/coverage
increase script test coverage
2015-04-29 10:20:45 -04:00
Manuel Araoz 100e370295 fix regressions after changes 2015-04-28 17:10:06 -03:00
Manuel Araoz 9a50958943 fix Block#toObject API 2015-04-28 16:42:56 -03:00
Manuel Araoz dff0891871 add failing test for Block#toObject 2015-04-28 15:17:41 -03:00
Manuel Araoz ee6f8d35ef increase script test coverage 2015-04-22 14:32:10 -03:00
Kirill Fomichev ca96359f40 Immutable network Object 2015-04-11 17:05:46 +03:00
Braydon Fuller bcd4efb724 Added `checkState` for positive integer in Output satoshis 2015-04-10 18:39:08 -04:00
Braydon Fuller 3005e19cbf Added precondition to transaction.to for a positive integer as an amount 2015-04-10 18:07:20 -04:00
Manuel Araoz aaa8c8aa67 fix index.html 2015-04-08 17:38:18 -03:00
Manuel Araoz e331c4ea49 allow addresses to have surrounding whitespace in validation 2015-03-31 17:54:06 -03:00
Kirill Fomichev c010cb8c50 drop cached value for inputAmount and outputAmount 2015-03-31 16:22:27 +03:00
Manuel Aráoz 53d23e501c Merge pull request #1162 from fanatid/fix/isPublicKeyHashOut
[BUG] Script.isPublicKeyHashOut
2015-03-30 02:31:09 -03:00
eordano 4f4b2b93fb Allow arrays as second arg to Networks.get 2015-03-29 22:56:29 -03:00
Kirill Fomichev 116024a7cb fix Script.isPublicKeyHashOut 2015-03-29 20:55:13 +03:00
Braydon Fuller f034a71929 Network Fixes
- Fixed Address classification for a custom network
- Added ability to remove a custom network
- Increased test coverage for Address
2015-03-28 19:09:58 -04:00
Eric Martindale c759401373 Fix tests, address commentary from @braydonf. 2015-03-24 17:57:39 -04:00
Eric Martindale a7d75cb25b Add test for patch. 2015-03-24 16:38:02 -04:00
Manuel Araoz 56c1e8c000 fix test for hdkey cache 2015-03-20 16:01:05 -03:00
Manuel Araoz 7da4c7925a lazy calc for xpubkey in HDPrivateKey 2015-03-20 15:49:26 -03:00
Manuel Araoz ef7eafbb0c increase test coverage and fix some bugs 2015-03-18 18:58:41 -03:00
Manuel Araoz e0b1ca0e10 move some script logic from Address to Script 2015-03-18 17:59:09 -03:00
Manuel Araoz 3619c7c9e2 fix problematic cases 2015-03-18 17:40:26 -03:00
Manuel Araoz a9328d76ff add extra test 2015-03-18 17:22:32 -03:00
Manuel Araoz 62ea45a524 refactor Address<->Script relation 2015-03-18 16:54:16 -03:00
eordano 294ff097a1 Add error if shuffle function doesnt return an expected result 2015-03-11 15:49:42 -03:00
eordano a37e7b140c Add functionality to randomize outputs 2015-03-11 15:38:53 -03:00
Manuel Araoz b685b5d28a add inputAmount and outputAmount to docs 2015-03-02 10:44:39 -03:00
Manuel Araoz b92fd915eb increase coverage for Input and Output, fix some bugs 2015-02-27 18:46:27 -03:00
Manuel Araoz d5fd3919c9 add Transaction#inputAmount and outputAmount 2015-02-27 16:38:48 -03:00
Manuel Aráoz 220a5bb566 Merge pull request #1115 from eordano/fix/privCheck
Fix validation error
2015-02-24 17:58:42 -03:00
eordano 9409698e06 Fix validation error 2015-02-24 17:49:26 -03:00
eordano 405f4f43df Update dust amount 2015-02-24 17:24:22 -03:00
eordano c5d7eacfac Add check for output amount > input amount 2015-02-24 16:34:52 -03:00
Esteban Ordano bd172e7c09 Merge pull request #1110 from maraoz/fix/#1096
fix #1096: PrivateKey#toAddress(network)
2015-02-24 15:54:16 -03:00
Manuel Araoz c4666044e9 fix #1096: PrivateKey#toAddress(network) 2015-02-24 15:34:44 -03:00
eordano 427c9b3234 Less repetition on tests for skipping serialization checks 2015-02-24 15:31:26 -03:00
Manuel Aráoz 684dfd5283 Merge pull request #1102 from throughnothing/merkleblock
Add MerkleBlock
2015-02-24 14:59:19 -03:00
Braydon Fuller fb01bc09e4 Added test to check that merkle nodes do not match, and misc jshint fixes. 2015-02-24 11:38:06 -05:00
eordano a6df7a175e Better granularity on serialize() checks 2015-02-24 13:02:34 -03:00
William Wolf 3eb95b6576 _traverseMerkleTree state cleanup + improve hasTransactions() 2015-02-24 00:51:38 -08:00
William Wolf bb0efd2108 Remove _validMerkleTree caching 2015-02-23 19:40:52 -08:00
William Wolf a478e39524 Review Fixes 2015-02-23 10:05:45 -08:00
eordano a07d90dfbf Fix error on public key for hdpublickey 2015-02-23 12:10:51 -03:00
eordano 89d78019d8 Fix bug on hdprivate key generation 2015-02-23 11:40:31 -03:00
William Wolf a67084d176 cleanup 2015-02-23 01:06:22 -08:00
William Wolf c558c4e34a hasTransaction(tx) + tests 2015-02-22 21:10:50 -08:00
William Wolf 611dae5b55 validMerkleTree() method plus more test blocks 2015-02-22 21:10:50 -08:00
William Wolf 3f11d8e927 One variable per var statement 2015-02-22 21:10:50 -08:00
William Wolf 32583fbbe3 Cleanup test 2015-02-22 21:10:49 -08:00
William Wolf 29c18e22f0 Add lib/block/merkleblock.js 2015-02-22 21:10:49 -08:00