Commit graph

655 commits

Author SHA1 Message Date
Chris Stewart
d81e7305b0 Fixing a few nits 2016-08-02 12:15:01 -05:00
Chris Stewart
3d4e6ce7b0 Removing mutability from ScriptInterpreter, this should fix concurrency issues with running tests 2016-08-02 11:14:19 -05:00
Chris Stewart
c27548cc20 Fixing a few nits 2016-07-29 09:02:06 -05:00
Chris Stewart
cd874c92d2 Fixing an anti-pattern inside of ScriptPubKey companion object, now ScriptPubKey case classes reside in the companion object of the subtype - i.e. P2PKHScriptPubKey instead of the generic ScriptPubKey companion object 2016-07-28 20:40:48 -05:00
Chris Stewart
962833c350 Fixing an anti-pattern inside of ScriptSignature companion object, now ScriptSignature case classes reside in the companion object of the subtype - i.e. P2PKHScriptSig instead of the generic ScriptSignature companion object 2016-07-28 20:09:45 -05:00
Chris Stewart
087c80ef4b Allowing for MultiSignatureScriptSignatures to have 0 requiredSigs, cleaning up comments 2016-07-28 15:26:22 -05:00
Chris Stewart
e14e037542 Fixing issues in generators where we were not generating the max/min amount of public keys for a MultiSignatureScriptPubKey 2016-07-28 13:21:22 -05:00
Chris Stewart
58efa9c8c7 Adding generator for p2sh transactions of standard scriptSig/scriptPubKey types, writing property that says they should evaluate to true in the interpreter 2016-07-28 09:04:52 -05:00
Chris Stewart
c53c97e9c0 Refactoring generators, now generating signed scriptSigs inside of ScriptGenerators. Creating generators for single input transactions inside of TransactionGenerators 2016-07-27 09:41:26 -05:00
Chris Stewart
ec49753e53 Adding test to create signed p2shScriptSig, then make sure that scriptSig evaluates to true through the ScriptInterpreter 2016-07-25 14:42:58 -05:00
Chris Stewart
8f37e950eb Fixing issue with 33 byte representation of private keys 2016-07-25 13:35:25 -05:00
Chris Stewart
31a419445d Successfully replicating the creation of a digital signature that bitcoin core produced 2016-07-25 11:24:13 -05:00
Chris Stewart
71a50be511 Successfully creating p2pk and multisignature scriptSig digital signatures - they evaluate to true when run through the ScriptInterpreter 2016-07-22 20:58:23 -05:00
Chris Stewart
40697b23e0 Adding BitcoinAddressSpec, adding convienience factory functions inside of P2PKHAddress and P2SHAddress 2016-07-21 08:49:42 -05:00
Chris Stewart
24748494bc Fixing bug in creating a P2SHScriptPubKey, factoring out P2PKHAddress & P2SHAddress into their own companion objects 2016-07-21 08:27:42 -05:00
Chris Stewart
34d4d75624 refactoring address types in to algebraic data types 2016-07-20 20:39:27 -05:00
Chris Stewart
abfcf3b694 Moving enocePubKeyHashAddress to BitcoinAddress 2016-07-20 19:49:17 -05:00
Chris Stewart
f0e9534657 Merge pull request #17 from Christewart/refactor_number_system
Refactor number system
2016-07-17 19:46:33 -05:00
Chris Stewart
6f89f622f7 Merge pull request #7 from TomMcCabe/refactor_number_system
increase test coverage for CompactSizeUInt
2016-07-17 19:20:39 -05:00
Tom McCabe
0e391944fe increase test coverage for CompactSizeUInt 2016-07-17 18:58:39 -05:00
Chris Stewart
c758452972 Fixing bug in LockTimeInterpreter with checkking locktimes on txs, uncommenting tx_invalid.json tests 2016-07-17 15:57:29 -05:00
Chris Stewart
9c5069057e Refactoring uneeded hex parameter inside of Int32 & Int64, calculating pushOps inside of ScriptSignature & ScriptPubKey factories in a more robust way 2016-07-17 13:09:29 -05:00
Chris Stewart
c5cf2f9964 Removing gen package from test coverage report 2016-07-17 10:35:03 -05:00
Chris Stewart
2690230c60 Refactoring the underlying number type for CompactSizeUInt to be UInt64 2016-07-17 10:01:14 -05:00
Chris Stewart
d901448207 Fixing bug in parsing multiple transactions and their locktimes inside of RawTransactionSerializer 2016-07-16 20:44:05 -05:00
Chris Stewart
4e37c7fa05 Cleaning up codebase for pull request, fixing a few minor issues 2016-07-15 12:05:59 -05:00
Chris Stewart
52dea04028 Trying to kick off CI 2016-07-12 12:40:24 -05:00
Chris Stewart
f2941cb24c Adding lowerbounds invariant on .toInt inside of NumberTypes 2016-07-12 10:44:28 -05:00
Chris Stewart
8cb8bcc0f2 Merge pull request #6 from TomMcCabe/refactor_number_system
Refactor number system
2016-07-12 10:21:18 -05:00
Tom McCabe
a33beaab87 refactor some instances of underlying.toInt that were missed in previous commit 2016-07-12 10:07:38 -05:00
Tom McCabe
723156467a Simplify toInt function with require statement 2016-07-12 09:44:40 -05:00
Tom McCabe
ebdb29f832 fix transaction generator, clean up spacing in Constants 2016-07-11 11:07:15 -05:00
Tom McCabe
1e3bcc1435 fix serialization symmetry for Specs of Block, BlockHeader and CompactSizeUInt 2016-07-08 12:58:41 -05:00
Tom McCabe
6914a2e102 refactor underlying.toInt in TransactionTestUtil 2016-07-06 15:55:26 -05:00
Tom McCabe
3c6ccf510d remove incorrect import causing travis CI build to break 2016-07-06 15:50:36 -05:00
Tom McCabe
350a41b5be change logback level to warn, implement | for UInt32 and add spec, replace underlying.toInt with override toInt function 2016-07-06 15:41:31 -05:00
Tom McCabe
32b2da3f28 add respective generators and specs for ScriptNumber, Block, BlockHeader, CompactSizeUInt 2016-07-06 15:04:50 -05:00
Tom McCabe
6d4763acf4 implement toInt function for all signed/unsigned numbers, add Int64 boolean operators to ScriptNumber 2016-07-05 15:00:27 -05:00
Tom McCabe
de999ab03b Merge branch 'refactor_number_system' of https://github.com/Christewart/bitcoin-s-core into refactor_number_system 2016-07-05 13:05:23 -05:00
Tom McCabe
0947484e03 refactor num to underlying 2016-07-05 13:02:18 -05:00
Chris Stewart
48316f4505 Merge branch 'master' into refactor_number_system 2016-07-05 12:57:44 -05:00
Tom McCabe
fa80a1096e add Int64 in LockTimeInterpreter 2016-07-01 21:27:04 -05:00
Tom McCabe
cc5c00d613 Merge branch 'refactor_number_system' of https://github.com/Christewart/bitcoin-s-core into refactor_number_system 2016-07-01 11:57:06 -05:00
Tom McCabe
739e1b11b6 replacing appropriate native scala numbers with UInt32s 2016-07-01 11:56:40 -05:00
Chris Stewart
fe352c8a59 Fixing bug in creating CompactSizeUInt from num, also extending Factory from CompactSizeUInt factory object 2016-06-30 09:20:42 -05:00
Chris Stewart
9b57cdef0b Adding CompactSizeUIntSpec, adding function to create CompactSizeUInt from a number 2016-06-29 15:38:39 -05:00
Tom McCabe
efc3d41437 refactor numbers in BlockHeader and Block 2016-06-28 15:08:26 -05:00
Tom McCabe
e6fff6a7c8 Merge branch 'refactor_number_system' of https://github.com/Christewart/bitcoin-s-core into refactor_number_system 2016-06-28 08:42:57 -05:00
Chris Stewart
a0991e1751 Fixing bug in serialization of UInt64s 2016-06-28 08:41:13 -05:00
Tom McCabe
a3883cd580 Merge branch 'refactor_number_system' of https://github.com/Christewart/bitcoin-s-core into refactor_number_system 2016-06-27 13:30:42 -05:00