aboutsummaryrefslogtreecommitdiff
path: root/src/test/test_bitcoin.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [c++11] Use std::unique_ptr for block creation.Daniel Kraft2016-06-181-2/+3
| | | | | | CreateNewBlock returns a pointer for which the caller takes ownership. Use std::unique_ptr to make this explicit and simplify handling of these objects in getblocktemplate.
* Refactor CreateNewBlock to be a method of the BlockAssembler classAlex Morcos2016-05-181-1/+1
|
* Merge #7787: [Moveonly] Create ui_interface.cppWladimir J. van der Laan2016-04-191-2/+0
|\ | | | | | | | | fa10ce6 Move ui_interface.cpp to libbitcoin_server_a_SOURCES (MarcoFalke) fabbf80 [ui] Move InitError, InitWarning, AmountErrMsg (MarcoFalke)
| * [ui] Move InitError, InitWarning, AmountErrMsgMarcoFalke2016-04-021-2/+0
| |
* | test: Create test fixture for walletWladimir J. van der Laan2016-04-181-23/+0
|/ | | | | Removes all the `#ifdef ENABLE_WALLET` from `test_bitcoin` by making the wallet tests use their own fixture.
* Merge #7691: [Wallet] refactor wallet/init interactionWladimir J. van der Laan2016-04-021-1/+0
|\ | | | | | | 25340b7 [Wallet] refactor wallet/init interaction (Jonas Schnelli)
| * [Wallet] refactor wallet/init interactionJonas Schnelli2016-03-221-1/+0
| |
* | rpc: Register calls where they are definedWladimir J. van der Laan2016-03-311-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | Split out methods to every module, apart from 'help' and 'stop' which are implemented in rpcserver.cpp itself. - This makes it easier to add or remove RPC commands - no longer everything that includes rpcserver.h has to be rebuilt when there's a change there. - Cleans up `rpc/server.h` by getting rid of the huge cluttered list of function definitions. - Removes most of the bitcoin-specific code from rpcserver.cpp and .h. Continues #7307 for the non-wallet.
* | Merge #7187: Keep reorgs fast for SequenceLocks checksWladimir J. van der Laan2016-03-161-1/+1
|\ \ | |/ |/| | | 982670c Add LockPoints (Alex Morcos)
| * Add LockPointsAlex Morcos2016-03-161-1/+1
| | | | | | | | Obtain LockPoints to store in CTxMemPoolEntry and during a reorg, evaluate whether they are still valid and if not, recalculate them.
* | Move GetTempPath() to testutil.Mustafa2016-03-111-1/+2
|/
* [RPC, Wallet] Move RPC dispatch table registration to wallet/ codeJonas Schnelli2016-01-201-0/+1
| | | | Allow extending the rpc dispatch table by appending commands when server is not running.
* Bump copyright headers to 2015MarcoFalke2015-12-131-1/+1
|
* Store the total sig op count of a tx.Alex Morcos2015-12-011-1/+1
| | | | Store sum of legacy and P2SH sig op counts. This is calculated in AcceptToMemory pool and storing it saves redoing the expensive calculation in block template creation.
* Track coinbase spends in CTxMemPoolEntrySuhas Daftuar2015-11-301-1/+1
| | | | This allows us to optimize CTxMemPool::removeForReorg.
* Change GetPriority calculation.Alex Morcos2015-11-191-2/+7
| | | | Compute the value of inputs that already are in the chain at time of mempool entry and only increase priority due to aging for those inputs. This effectively changes the CTxMemPoolEntry's GetPriority calculation from an upper bound to a lower bound.
* Merge pull request #7053Wladimir J. van der Laan2015-11-271-1/+2
|\ | | | | | | 2e29e7e Globals: Remove a bunch of Params() calls from main.cpp: (Jorge Timón)
| * Globals: Remove a bunch of Params() calls from main.cpp:Jorge Timón2015-11-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Chainparams: Explicit CChainParams arg for main: -AcceptBlock -AcceptBlockHeader -ActivateBestChain -ConnectTip -InitBlockIndex -LoadExternalBlockFile -VerifyDB parametric constructor 2) Also pickup more Params()\. in main.cpp 3) Pass nPruneAfterHeight explicitly to new FindFilesToPrune() in main.cpp
* | Implement helper class for CTxMemPoolEntry constructorAlex Morcos2015-11-161-0/+7
|/ | | | This is only for unit tests.
* Chainparams: Explicit CChainParams arg for miner:Jorge Timón2015-11-111-1/+1
| | | | | | | -BitcoinMiner -CreateNewBlock -GenerateBitcoins -ProcessBlockFound
* Chainparams: Explicit CChainParams arg for main (pre miner):Jorge Timón2015-11-111-2/+3
| | | | | -ProcessNewBlock -TestBlockValidity
* tests: Initialize networking on windowsWladimir J. van der Laan2015-11-011-0/+1
|
* Chainparams: Replace CBaseChainParams::Network enum with string constants ↵Jorge Timón2015-10-201-3/+3
| | | | (suggested by Wladimir)
* Unit test doublespends in new blocksGavin Andresen2015-07-271-3/+54
| | | | | | | 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.
* TRIVIAL: Missing includesJorge Timón2015-07-231-0/+1
|
* Merge pull request #6047Wladimir J. van der Laan2015-05-061-0/+3
|\ | | | | | | | | a56054b Update key.cpp to use new libsecp256k1 (Pieter Wuille) a591d98 Squashed 'src/secp256k1/' changes from 1897b8e..22f60a6 (Pieter Wuille)
| * Update key.cpp to use new libsecp256k1Pieter Wuille2015-05-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libsecp256k1's API changed, so update key.cpp to use it. Libsecp256k1 now has explicit context objects, which makes it completely thread-safe. In turn, keep an explicit context object in key.cpp, which is explicitly initialized destroyed. This is not really pretty now, but it's more efficient than the static initialized object in key.cpp (which made for example bitcoin-tx slow, as for most of its calls, libsecp256k1 wasn't actually needed). This also brings in the new blinding support in libsecp256k1. By passing in a random seed, temporary variables during the elliptic curve computations are altered, in such a way that if an attacker does not know the blind, observing the internal operations leaks less information about the keys used. This was implemented by Greg Maxwell.
* | Separate CTranslationInterface from CClientUIInterfaceJorge Timón2015-04-161-1/+1
|/
* Merge pull request #5900Wladimir J. van der Laan2015-04-011-0/+1
|\ | | | | | | 3fcfbc8 Add a consistency check for the block chain data structures (Pieter Wuille)
| * Add a consistency check for the block chain data structuresPieter Wuille2015-03-271-0/+1
| | | | | | | | | | | | This adds a -checkblockindex (defaulting to true for regtest), which occasionally does a full consistency check for mapBlockIndex, setBlockIndexCandidates, chainActive, and mapBlocksUnlinked.
* | Initialization: setup environment before starting testsdexX72015-03-291-0/+1
|/ | | | The environment is prepared by the main thread to guard against invalid locale settings and to prevent deinitialization issues of Boost path, which can result in app crashes.
* Merge pull request #5745Wladimir J. van der Laan2015-03-201-2/+2
|\ | | | | | | 50c72f2 [Move Only] Move wallet related things to src/wallet/ (Jonas Schnelli)
| * [Move Only] Move wallet related things to src/wallet/Jonas Schnelli2015-03-121-2/+2
| | | | | | | | could once be renamed from /src/wallet to /src/legacywallet.
* | tests: add a BasicTestingSetup and apply to all testsWladimir J. van der Laan2015-03-121-2/+8
|/ | | | | | | | Make sure that chainparams and logging is properly initialized. Doing this for every test may be overkill, but this initialization is so simple that that does not matter. This should fix the travis issues.
* test: Remove UNITTEST paramsWladimir J. van der Laan2015-03-091-1/+1
| | | | | | | | | UNITTEST parameter are not used by any current tests, and the model (modifyable parameters) is inconvenient when unit-testing. As they are stored in a global structure eevery test would have to (re)set up its own parameters. For consistency it is also better to test with MAIN parameters.
* Reinitialize state in between individual unit tests.Pieter Wuille2015-03-031-14/+14
| | | | | This changes the TestingSetup fixture to be per-unit-test rather than global. Most tests don't need it, so it's only invoked in a few.
* Remove references to X11 licenceMichael Ford2014-12-161-1/+1
|
* Rename CWalletInterface to CValidationInterfacePieter Wuille2014-10-201-1/+1
| | | | It's useful for much more than wallets.
* Merge pull request #4834Pieter Wuille2014-10-081-1/+1
|\ | | | | | | | | | | | | | | 7c70438 Get rid of the dummy CCoinsViewCache constructor arg (Pieter Wuille) ed27e53 Add coins_tests with a large randomized CCoinViewCache test. (Pieter Wuille) 058b08c Do not keep fully spent but unwritten CCoins entries cached. (Pieter Wuille) c9d1a81 Get rid of CCoinsView's SetCoins and SetBestBlock. (Pieter Wuille) f28aec0 Use ModifyCoins instead of mutable GetCoins. (Pieter Wuille)
| * Get rid of the dummy CCoinsViewCache constructor argPieter Wuille2014-09-241-1/+1
| |
* | Switch testing framework from MAIN to new UNITTEST networkSergioDemianLerner2014-10-021-1/+1
| | | | | | | | UNITTEST inherites from MAIN but allows synamically changing its parameters using the ModifiableParams() interface
* | Revert merge of pull #4845Wladimir J. van der Laan2014-10-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | It breaks the new mingw tests! See - https://travis-ci.org/bitcoin/bitcoin/jobs/36845581 - https://travis-ci.org/bitcoin/bitcoin/jobs/36845582 This reverts commit 470590277782cce2fe73275c74523aef59a51eab, 5e2e7fcb99738d9254d4030d53e4f711b2fc5ee0, a25fd6be138ff2bff7e2ad6a1a789db523c0193f.
* | Switch testing framework from MAIN to new UNITTEST networkSergioDemianLerner2014-09-291-1/+1
|/ | | | UNITTEST inherites from MAIN but allows synamically changing its parameters using the ModifiableParams() interface
* Split up util.cpp/hWladimir J. van der Laan2014-08-261-0/+1
| | | | | | | | | | | | | | | | Split up util.cpp/h into: - string utilities (hex, base32, base64): no internal dependencies, no dependency on boost (apart from foreach) - money utilities (parsesmoney, formatmoney) - time utilities (gettime*, sleep, format date): - and the rest (logging, argument parsing, config file parsing) The latter is basically the environment and OS handling, and is stripped of all utility functions, so we may want to rename it to something else than util.cpp/h for clarity (Matt suggested osinterface). Breaks dependency of sha256.cpp on all the things pulled in by util.
* move rand functions from util to new random.h/.cppPhilip Kaufmann2014-07-091-3/+1
|
* Move ui_interface to bitcoin_server.aWladimir J. van der Laan2014-07-071-1/+1
| | | | | There is no need for it in the utility libraries or tools. Put it in init.cpp, and in the tests separately (as they can't link init).
* Remove unnecessary dependencies for bitcoin-cliWladimir J. van der Laan2014-06-251-0/+1
| | | | | | | | | This commit removes all the unnecessary dependencies (key, core, netbase, sync, ...) from bitcoin-cli. To do this it shards the chain parameters into BaseParams, which contains just the RPC port and data directory (as used by utils and bitcoin-cli) and Params, with the rest.
* Fix test build after d138598Wladimir J. van der Laan2014-03-251-0/+5
| | | | | | | | Building the tests was giving some vague error message about a doubly-defined symbol. The solution is to define ShutdownRequested in test_bitcoin.cpp as well so that init.cpp does not get pulled in.
* Add licenses for tests and test dataWladimir J. van der Laan2014-03-181-0/+4
| | | | | | | | - Add license headers to source files (years based on commit dates) in `src/test` as well as `qa` - Add `README.md` to `src/test/data` specifying MIT license Fixes #3848
* Merge pull request #3416Wladimir J. van der Laan2013-12-201-1/+1
|\ | | | | | | 9e9056c Remove -logtodebugger (Wladimir J. van der Laan)