Matt Corallo
c9c107afaf
Make getBalance() significantly faster.
2013-06-05 16:29:11 +02:00
Matt Corallo
72f346c10f
Add tests for user-specified inputs in SendRequests.
2013-06-05 16:29:06 +02:00
Matt Corallo
375e553bdc
Add basic fee solver to Wallet.completeTx and extensive testing.
...
This also adds support for SendRequests which have some predefined
inputs (already signed), which will be tested in a later commit.
2013-06-05 16:28:35 +02:00
Matt Corallo
86046b7122
Add comments on dust output values and constants/util to calc them
2013-06-05 16:24:39 +02:00
Matt Corallo
4b1e45fae2
Make DefaultCoinSelector aware of priority, not just depth.
2013-06-05 16:11:35 +02:00
Matt Corallo
842b30e2ca
Add basic support for existing inputs in Transaction.signInputs
2013-06-05 16:11:27 +02:00
Matt Corallo
fd4845fa90
Add new data-driven test-case
2013-06-05 14:10:42 +02:00
Matt Corallo
c6b3b82a66
Fix TxOut serialization (fixes SIGHASH_SINGLE hashing)
2013-06-05 14:10:41 +02:00
Matt Corallo
07baa230f3
Wallet: Check if tx is time-locked not just has a lock time
2013-06-05 14:10:41 +02:00
Matt Corallo
e2fea77a3d
Catch potential exception on invalid signatures
2013-06-05 14:10:41 +02:00
Matt Corallo
fb912322ff
Replace Block.fakeClock with Utils.mockClock
2013-06-05 14:10:41 +02:00
Matt Corallo
5369ca925a
Add Transaction.clearIn/Outputs and make getIn/Outputs unmodifiable
2013-06-05 14:10:40 +02:00
Matt Corallo
5993f2dc6c
Further global replace of NetworkParameters.* -> *.get()
2013-06-05 14:10:40 +02:00
Mike Hearn
f4c3b6a49d
Global search and replace to use the param-class specific instance getters and prodNet -> MainNetParams.
...
The old "prodnet" name could be confusing to non-native speakers or people who just haven't been exposed to Google lingo. Main net is more idiomatic.
Conflicts:
tools/src/main/java/com/google/bitcoin/tools/BlockImporter.java
2013-06-05 14:10:40 +02:00
Mike Hearn
52586edb33
NetworkParameters: Refactor out into separate classes.
...
Hide fields behind getters and make unit tests create anonymous subclasses
to tweak them rather than overwriting global variables.
Introduce a regtest params class for use in the comparison tool.
Conflicts:
core/src/test/java/com/google/bitcoin/core/BitcoindComparisonTool.java
core/src/test/java/com/google/bitcoin/core/FullPrunedBlockChainTest.java
2013-06-05 14:10:39 +02:00
Mike Hearn
f6f290cc05
NetworkParameters: hide more params behind a getter.
2013-06-05 14:10:39 +02:00
Mike Hearn
1f005d7b3d
NetworkParameters: hide packet magic behind a getter.
...
Conflicts:
tools/src/main/java/com/google/bitcoin/tools/BlockImporter.java
core/src/main/java/com/google/bitcoin/utils/BlockFileLoader.java
core/src/test/java/com/google/bitcoin/core/FullBlockTestGenerator.java
2013-06-05 14:10:39 +02:00
Mike Hearn
8043bc335b
NetworkParameters: hide port behind a getter.
2013-06-05 14:10:38 +02:00
Mike Hearn
ec62bbdeab
NetworkParameters: hide genesis block behind a getter.
...
Conflicts:
core/src/test/java/com/google/bitcoin/core/FullBlockTestGenerator.java
2013-06-05 14:10:38 +02:00
Mike Hearn
619495875c
Block: Make some things public that aren't going to change.
...
Conflicts:
core/src/main/java/com/google/bitcoin/core/Block.java
2013-06-05 14:10:38 +02:00
Matt Corallo
28292b45a5
Implement dumb Comparable in Sha256Hash.
2013-06-05 14:10:37 +02:00
Matt Corallo
6cdfad43a3
Make Tx.connect public by exposing enums + tweak DISCONNECT_ON_CONFLICT
2013-06-05 14:10:37 +02:00
Matt Corallo
f7c09d74ea
Introduce Transaction.hasLockTime() and use it where appropriate.
2013-06-05 14:10:37 +02:00
Matt Corallo
2bd9531da6
Add txout.setValue, public decodeFromOpN+appendByte new MultiSig.
2013-06-05 14:10:37 +02:00
Matt Corallo
b840ddfcc8
Require bitcoind replies to a inv instead of just sending blocks.
...
This makes b57 testing actually useful.
2013-06-05 14:10:36 +02:00
Matt Corallo
60520ba17a
Add new data-driven tests from the reference client
2013-06-05 14:10:36 +02:00
Matt Corallo
fad5356bd9
Properly uncache scriptSig in TransactionInput.setScriptBytes
2013-06-05 14:10:36 +02:00
Matt Corallo
70685745c3
Fix a possible ArrayIndexOOBEx in Script processing (cleaner error).
2013-06-05 14:10:36 +02:00
Matt Corallo
304bc705b8
Fix script parsing bug and test for it (partially reverts 7837a54
)
2013-06-05 14:10:23 +02:00
Matt Corallo
e8ea5cea7c
Re-enable port selection as pull-tester will need it
2013-06-04 22:18:11 +02:00
Matt Corallo
a1c1a1117a
Rename blocks in FullBlockTestGenerator to make new tests easier
2013-06-04 22:18:11 +02:00
Matt Corallo
f9ebf56047
Test importing first 100K of blocks.
2013-06-04 22:18:11 +02:00
Matt Corallo
68e6228356
Handle duplicate chain.add calls significantly more effeciently.
2013-06-04 22:18:11 +02:00
Matt Corallo
ecca1c6f47
Add new BlockImporter.
2013-06-04 22:18:11 +02:00
Matt Corallo
729f2f5312
Store blocks on disk during BitcoindComparisonTool to save memory.
2013-06-04 22:18:11 +02:00
Matt Corallo
a131d08a58
Move BlockImporter to a util and make it an Iterator<Block>
2013-06-04 22:18:11 +02:00
Matt Corallo
1dadb33c28
Split expensive blocks into sigExpensive and largeReorg.
2013-06-04 22:18:11 +02:00
Matt Corallo
d1e689e6c5
Delete bitcoind patch, it is now in bitcoin/contrib/
2013-06-04 22:18:11 +02:00
Matt Corallo
9cbd824457
Create very large reorg test.
2013-06-04 22:18:10 +02:00
Matt Corallo
0390bc9371
Add height info to FullBlockTests, to verify the tests are correct.
2013-06-04 22:18:10 +02:00
Matt Corallo
9ddbcb88b9
Make txCounter work for larger values.
2013-06-04 22:18:10 +02:00
Matt Corallo
2e5ca9e72b
Allow FullBlockTestGenerator to indicate maximum reorg depth.
2013-06-04 22:18:10 +02:00
Matt Corallo
0ada33d2b1
Provide more opacity into exceptions.
2013-06-04 22:18:10 +02:00
Matt Corallo
939337b2db
Fix premature optimization in H2FullPrunedBlockStore (resets state)
...
This replaces the H2FullPrunedBlockStore schema with one that will
take (maybe) some more disk space while being a good bit faster.
The tradeoff made was really not worth it.
Also adds a version field to settings database incase something
other than schema changes in the future.
2013-06-04 22:18:10 +02:00
Matt Corallo
59e096e2ea
Add optional support native ECDSA (designed for sipa's impl).
...
This could be significantly more optimized if we avoided crossing
the JNI barrier as often, but as it is its waaay faster than
BouncyCastle.
2013-06-04 22:18:10 +02:00
Matt Corallo
70bffcd6f4
Move onPeerConnected to after VerAck.
2013-05-22 22:46:10 +02:00
Mike Hearn
f1750679b6
Use non-deprecated asserts in AlertMessageTest. Found by IntelliJ inspections.
2013-05-08 16:33:22 +02:00
Mike Hearn
2830d48ac1
Simply a few assertions.
2013-05-08 15:42:27 +02:00
Mike Hearn
1463213f25
Use port 18444 for regtest mode.
2013-05-08 14:30:15 +02:00
Mike Hearn
9d5b3865f5
Wallet: remove an unused variable from reorganize().
2013-05-07 12:48:34 +02:00