aboutsummaryrefslogtreecommitdiff
path: root/src/test
AgeCommit message (Collapse)Author
2015-07-27Unit test doublespends in new blocksGavin Andresen
As suggested by Greg Maxwell-- unit test to make sure a block with a double-spend in it doesn't pass validation if half of the double-spend is already in the memory pool (so full-blown transaction validation is skipped) when the block is received.
2015-07-27Cache transaction validation successesPieter Wuille
2015-07-27Merge pull request #5697Wladimir J. van der Laan
60c8bac Includes: Cleanup around net main and wallet (Jorge Timón) 9dd793f TRIVIAL: Missing includes (Jorge Timón)
2015-07-27Merge pull request #6468Wladimir J. van der Laan
6f8b6d3 don't try to decode invalid encoded ext keys (Jonas Schnelli) 8d2af54 extend bip32 tests to cover Base58c/CExtKey decode (Jonas Schnelli) 7cb1f9f fix and extend CBitcoinExtKeyBase template (Jonas Schnelli)
2015-07-24Merge pull request #6456Wladimir J. van der Laan
ec249d4 util: use locale-independent parsing in ParseDouble (Wladimir J. van der Laan) 7650449 univalue: Avoid unnecessary roundtrip through double for numbers (Wladimir J. van der Laan) e061e27 rpc: Make ValueFromAmount always return 8 decimals (Wladimir J. van der Laan)
2015-07-23Includes: Cleanup around net main and walletJorge Timón
-Move from .h to .cpp: in main, net and wallet -Remove unnecessary #include "main.h" -Cleanup some wallet files includes
2015-07-23TRIVIAL: Missing includesJorge Timón
2015-07-23extend bip32 tests to cover Base58c/CExtKey decodeJonas Schnelli
2015-07-20Separate core memory usage computation in core_memusage.hPieter Wuille
2015-07-18univalue: Avoid unnecessary roundtrip through double for numbersWladimir J. van der Laan
JSON makes no distinction between numbers and reals, and our code doesn't need to do so either. This removes VREAL, as well as its specific post-processing in `UniValue::write`. Non-monetary amounts do not need to be forcibly formatted with 8 decimals, so the extra roundtrip was unnecessary (and potentially loses precision).
2015-07-18rpc: Make ValueFromAmount always return 8 decimalsWladimir J. van der Laan
This is the format that was always returned to JSON clients. The difference was not noticed before, because VREAL values are post-processed by univalue. By implementing the functionality directly it breaks the dependency of rpcserver on utilmoneystr. FormatMoney is now only used for debugging purposes. To test, port over the formatting tests from util_tests.cpp to rpc_tests.cpp.
2015-07-10Merge pull request #6379Wladimir J. van der Laan
9cc9152 rpc: Accept scientific notation for monetary amounts in JSON (Wladimir J. van der Laan)
2015-07-10rpc: Accept scientific notation for monetary amounts in JSONWladimir J. van der Laan
Add a function `ParseFixedPoint` that parses numbers according to the JSON number specification and returns a 64-bit integer. Then this in `AmountFromValue`, rather than `ParseMoney`. Also add lots of tests (thanks to @jonasschnelli for some of them). Fixes issue #6297.
2015-07-09Merge pull request #6368Wladimir J. van der Laan
cb54d17 CLTV: Add more tests to improve coverage (Esteban Ordano)
2015-07-07tests: Fix bitcoin-tx signing testcaseWladimir J. van der Laan
Fixes wrong scriptPubkey problem, which caused the transaction to not actually be signed.
2015-07-06CLTV: Add more tests to improve coverageEsteban Ordano
Four cases included: * The CLTV operand type mismatches the tx locktime. In the script it is 1 (interpreted as block height), but in the tx is 500000000 (interpreted as date) * The stack is empty when executing OP_CLTV * The tx is final by having only one input with MAX_INT sequence number * The operand for CLTV is negative (after OP_0 OP_1 OP_SUB)
2015-07-06Merge pull request #6335Wladimir J. van der Laan
9238ecb Policy: MOVEONLY: 3 functions to policy.o: (Luke Dashjr) 627b9de Policy: MOVEONLY: Create policy/policy.h with some constants (Jorge Timón)
2015-07-02Adding CSubNet constructor over a single CNetAddrJonas Schnelli
2015-07-02use CBanEntry as object container for banned nodesJonas Schnelli
- added a reason enum for a ban - added creation time for a ban Using CBanEntry as container will keep banlist.dat extenable.
2015-06-26Policy: MOVEONLY: 3 functions to policy.o:Luke Dashjr
- [script/standard.o] IsStandard - [main.o] IsStandardTx - [main.o] AreInputsStandard Also, don't use namespace std in policy.cpp
2015-06-26Policy: MOVEONLY: Create policy/policy.h with some constantsJorge Timón
2015-06-26Merge pull request #6124Wladimir J. van der Laan
ffd75ad Enable CHECKLOCKTIMEVERIFY as a standard script verify flag (Peter Todd) bc60b2b Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65) (Peter Todd) 48e9c57 Move LOCKTIME_THRESHOLD to src/script/script.h (Peter Todd) 99088d6 Make CScriptNum() take nMaxNumSize as an argument (Peter Todd)
2015-06-25UniValue: don't escape solidus, keep espacing of reverse solidusJonas Schnelli
2015-06-23Merge pull request #6088Wladimir J. van der Laan
2085895 fundrawtransaction tests (Jonas Schnelli) 21bbd92 Add fundrawtransaction RPC method (Matt Corallo) 1e0d1a2 Add FundTransaction method to wallet (Matt Corallo) 2d84e22 Small tweaks to CCoinControl for fundrawtransaction (Matt Corallo) 9b4e7d9 Add DummySignatureCreator which just creates zeroed sigs (Pieter Wuille)
2015-06-21Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65)Peter Todd
<nLockTime> CHECKLOCKTIMEVERIFY -> <nLockTime> Fails if tx.nLockTime < nLockTime, allowing the funds in a txout to be locked until some block height or block time in the future is reached. Only the logic and unittests are implemented; this commit does not have any actual soft-fork logic in it. Thanks to Pieter Wuille for rebase. Credit goes to Gregory Maxwell for the suggestion of comparing the argument against the transaction nLockTime rather than the current time/blockheight directly.
2015-06-19setban: add IPv6 testsJonas Schnelli
2015-06-17setban: rewrite to UniValue, allow absolute bantimeJonas Schnelli
2015-06-17[RPC] extend setban to allow subnetsJonas Schnelli
2015-06-17[QA] add setban/listbanned/clearbanned testsJonas Schnelli
2015-06-12Merge pull request #6256Wladimir J. van der Laan
65b9454 Use best header chain timestamps to detect partitioning (Gavin Andresen)
2015-06-11Fix univalue handling of \u0000 characters.Daniel Kraft
Univalue's parsing of \u escape sequences did not handle NUL characters correctly. They were, effectively, dropped. The extended test-case fails with the old code, and is fixed with this patch.
2015-06-11Add fundrawtransaction RPC methodMatt Corallo
2015-06-10Merge pull request #5927Wladimir J. van der Laan
dce8360 Reduce checkpoints' effect on consensus. (Pieter Wuille)
2015-06-10Merge pull request #6222Wladimir J. van der Laan
efd4444 Explicitly set tx.nVersion for the genesis block and mining tests (Mark Friedenbach)
2015-06-09Merge pull request #6239Wladimir J. van der Laan
7d8ffac Changes necessary now that zero values accepted in AmountFromValue (Wladimir J. van der Laan) a04bdef Get rid of fPlus argument to FormatMoney (Wladimir J. van der Laan) 4b4b9a8 Don't go through double in AmountFromValue and ValueFromAmount (Wladimir J. van der Laan)
2015-06-08Use best header chain timestamps to detect partitioningGavin Andresen
The partition checking code was using chainActive timestamps to detect partitioning; with headers-first syncing, it should use (and with this pull request, does use) pIndexBestHeader timestamps. Fixes issue #6251
2015-06-06fix util_tests.cpp clang warningsJonas Schnelli
was introduced with #6121
2015-06-06Changes necessary now that zero values accepted in AmountFromValueWladimir J. van der Laan
- Add an accept test for zero amounts, and a reject test for negative amounts - Remove ugly hack in `settxfee` that is no longer necessary - Do explicit zero checks in wallet RPC functions - Don't add a check for zero amounts in `createrawtransaction` - this could be seen as a feature
2015-06-06Get rid of fPlus argument to FormatMoneyWladimir J. van der Laan
It's never used with any other value than false, the default.
2015-06-04univalue: add type check unit testsJonas Schnelli
2015-06-04util: Add ParseInt64 and ParseDouble functionsWladimir J. van der Laan
Strict parsing functions for other numeric types. - ParseInt64 analogous to ParseInt32, but for 64-bit values. - ParseDouble for doubles. - Make all three Parse* functions more strict (e.g. reject whitespace on the inside) Also add tests.
2015-06-04Simplify RPCclient, adapt json_parse_error testWladimir J. van der Laan
# Conflicts: # src/test/rpc_tests.cpp
2015-06-04fix univalue json parse testsJonas Schnelli
2015-06-04Remove JSON Spirit wrapper, remove JSON Spirit leftoversJonas Schnelli
- implement find_value() function for UniValue - replace all Array/Value/Object types with UniValues, remove JSON Spirit to UniValue wrapper - remove JSON Spirit sources
2015-06-04remove JSON Spirit UniValue wrapperJonas Schnelli
2015-06-04fix rpc unit test, plain numbers are not JSON compatible objectJonas Schnelli
UniValues read() does only read valid json.
2015-06-04univalue: add support for real, fix percision and make it json_spirit compatibleJonas Schnelli
- avoid breaking the API because of different number/percision handling
2015-06-04expicit set UniValue type to avoid empty valuesJonas Schnelli
2015-06-04extend conversion to UniValueJonas Schnelli
2015-06-04Convert tree to using univalue. Eliminate all json_spirit uses.Jeff Garzik