aboutsummaryrefslogtreecommitdiff
path: root/src/test
AgeCommit message (Collapse)Author
2014-03-10Merge pull request #3514Wladimir J. van der Laan
f59d8f0 Per-peer block download tracking and stalled download detection. (Pieter Wuille)
2014-03-07Merge pull request #3768Wladimir J. van der Laan
fecba4e Total money limit test (Pieter Wuille)
2014-03-05Total money limit testPieter Wuille
Added bounds check by @il--ya. Updated-by: Wladimir van der Laan <laanwj@gmail.com>
2014-02-26Merge pull request #3737 from jgarzik/op-return-sizeGavin Andresen
script: reduce OP_RETURN standard relay bytes to 40
2014-02-26script: reduce OP_RETURN standard relay bytes to 40Jeff Garzik
Per mailing list discussion.
2014-02-26Merge pull request #3735 from laanwj/2014_02_remove_PRIx64_completelyGavin Andresen
Remove PRIx64 usage completely
2014-02-25Merge pull request #3559Wladimir J. van der Laan
e6c6bc9 Adds additional zero checks for setCompact These encoded values should all decode to zero (Noel Tiernan)
2014-02-25Merge pull request #3712Wladimir J. van der Laan
a3138ed add test of DecodeBase58 skipping whitespace (Christian von Roques)
2014-02-24Merge pull request #3305 from mikehearn/fee_dropJeff Garzik
Drop fees by 10x due to the persistently higher exchange rate.
2014-02-24Get rid of C99 PRI?64 usage in source filesWladimir J. van der Laan
Amend to d5f1e72. It turns out that BerkelyDB was including inttypes.h indirectly, so we cannot fix this with just macros. Trivial commit: apply the following script to all .cpp and .h files: # Middle sed -i 's/"PRIx64"/x/g' "$1" sed -i 's/"PRIu64"/u/g' "$1" sed -i 's/"PRId64"/d/g' "$1" # Initial sed -i 's/PRIx64"/"x/g' "$1" sed -i 's/PRIu64"/"u/g' "$1" sed -i 's/PRId64"/"d/g' "$1" # Trailing sed -i 's/"PRIx64/x"/g' "$1" sed -i 's/"PRIu64/u"/g' "$1" sed -i 's/"PRId64/d"/g' "$1" After this commit, `git grep` for PRI.64 should turn up nothing except the defines in util.h.
2014-02-21add test of DecodeBase58 skipping whitespaceChristian von Roques
2014-02-11Add HasCanonicalPushes(), and use it in IsStandardTxPieter Wuille
2014-02-08Per-peer block download tracking and stalled download detection.Pieter Wuille
Keep track of which block is being requested (and to be requested) from each peer, and limit the number of blocks in-flight per peer. In addition, detect stalled downloads, and disconnect if they persist for too long. This means blocks are never requested twice, and should eliminate duplicate downloads during synchronization.
2014-01-30Merge pull request #3601Wladimir J. van der Laan
c32a486 Add more data-driven tests. (Matt Corallo)
2014-01-30Add more data-driven tests.Matt Corallo
2014-01-27Merge pull request #2342Wladimir J. van der Laan
665bdd3 Fix off-by-one errors in use of IsFinalTx() (Peter Todd)
2014-01-26Fix off-by-one errors in use of IsFinalTx()Peter Todd
Previously CreateNewBlock() didn't take into account the fact that IsFinalTx() without any arguments tests if the transaction is considered final in the *current* block, when both those functions really needed to know if the transaction would be final in the *next* block. Additionally the UI had a similar misunderstanding. Also adds some basic tests to check that CreateNewBlock() is in fact mining nLockTime-using transactions correctly. Thanks to Wladimir J. van der Laan for rebase.
2014-01-24Unit test fixes for AssertLockHeld / -DDEBUG_LOCKORDERGavin Andresen
Unit tests would fail if compiled with -DDEBUG_LOCKORDER (AssertLockHeld() would fail; AssertLockHeld() relies on the DEBUG_LOCKORDER code to keep track of locks held). Fixed by LOCK'ing the wallet mutex in the unit tests that manipulate the wallet.
2014-01-19Adds additional zero checks for setCompactNoel Tiernan
These encoded values should all decode to zero Positive Numbers 0x01003456 (1 byte 0x00) 0x02000056 (2 bytes 0x0000) 0x03000000 (3 bytes 0x000000) 0x04000000 (4 bytes 0x000000_00) Negative Numbers 0x00923456 -(0 bytes, so zero) 0x01803456 -(1 byte 0x00) 0x02800056 -(2 bytes 0x0000) 0x03800000 -(3 bytes 0x000000) 0x04800000 -(4 bytes 0x000000_00)
2014-01-11small headers ordering cleanupPhilip Kaufmann
- keep headers in alphabetical order - fix Makefile.am (2 files in 1 line - leftover) - remove some spaces etc.
2014-01-11makefile.am: split long lines into one file per lineWladimir J. van der Laan
This makes it easier to read diffs. Cosmetic change to build system only.
2014-01-09Add test for GetTime()Wladimir J. van der Laan
Test for mingw/wine issue #3494, where the upper word of time(NULL) return value gets clobbered.
2013-12-25Unittests for uint256.hThomas Holenstein
Unit tests for uint256.h. The file uint160_tests.cpp is no longer needed. The ad-hoc tests which were in uint256.h are also no longer needed. The new tests achieve 100% coverage.
2013-12-20Merge pull request #3416Wladimir J. van der Laan
9e9056c Remove -logtodebugger (Wladimir J. van der Laan)
2013-12-19Make bitcoin compile without wallet if "db_cxx.h" is not presentThomas Holenstein
Moved includes of "db.h" into #ifdef ENABLE_WALLET blocks or remove them.
2013-12-16Improve unit test code not to compare with explanatory messages for each ↵Kangmo
platform. Instead, use have an exception object to check if the string returned by what() on the raised exception matches the string returned by what() on the expected exception instance. This way, we do not need to list all different possible explanatory strings for different platforms in the test code, and make it simple. (The idea is by Cory Fields.)
2013-12-15Fix unit test error on OSX 10.9 using Apple LLVM v5.0.Kangmo
Before the fix, there were 6 errors such as : serialize_tests.cpp:77: error in "noncanonical": incorrect exception std::ios_base::failure is caught It turns out that ex.what() returns following string instead of "non-canonical ReadCompactSize()" "non-canonical ReadCompactSize(): unspecified iostream_category error" After the fix, unit test passed. The test ran using Apple LLVM v5.0 on OSX 10.9 and the unit test error happened because of different error messages by different compilers. g++ --version on my development environment. ``` Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn) Target: x86_64-apple-darwin13.0.0 Thread model: posix ```
2013-12-15Remove -logtodebuggerWladimir J. van der Laan
`-logtodebugger` is a strange, obscure, WIN32-only (mostly MSVC) thing. Let's clean up the options a bit get rid of it. test_bitcoin was using fLogToDebugger as a way to prevent logging to debug.log. For this, add a boolean (not exposed as option) fLogToDebugLog that defaults to true and is disabled in the tests.
2013-12-11Add tests for correct and incorrect order of signatures for a multisigTamas Blummer
(P2SH)
2013-12-09Merge pull request #3368 from laanwj/2013_11_disable_wallet_miningGavin Andresen
Allow mining RPCs with --disable-wallet
2013-12-09Re-enable miner tests in --disable-wallet modeWladimir J. van der Laan
Use a fixed script instead of a CReserveKey from the wallet. This does not affect the functionality or result of the tests as they never check the state of the wallet in the first place.
2013-12-08Add main-specific node statePieter Wuille
2013-12-04Split off rpc_wallet_testsWladimir J. van der Laan
Split wallet tests from other RPC tests. Now no #ifdef ENABLE_WALLET are needed anymore in either file.
2013-12-04Add --disable-wallet option to build systemWladimir J. van der Laan
Make it possible to build Bitcoin without wallet (and thus without BDB) so that it only functions as node.
2013-12-04Delimit code with #ifdef ENABLE_WALLETWladimir J. van der Laan
Delimit all code that uses the wallet functions in implementation files that conditionally use the wallet.
2013-12-03Merge pull request #3320 from laanwj/2013_11_cli_splitGavin Andresen
bitcoin-cli: remove unneeded dependencies (only minor code movement)
2013-12-03bitcoin-cli: remove unneeded dependencies (only code movement)Wladimir J. van der Laan
Remove unnecessary dependencies for bitcoin-cli (leveldb, berkelydb, wallet, RPC server) Build system changes: - split libbitcoin.a into libbitcoin_common.a, libbitcoin_server.a and libbitcoin_cli.a Code changes (movement only): - split up HelpMessage into HelpMessage in init.cpp and HelpMessageCli in rpcclient.cpp - move uiInterface from init.cpp to util.cpp
2013-12-02Make unit tests succeed with -DDEBUG_LOCKORDERGavin Andresen
2013-11-30Add verbose boolean to getrawmempoolGavin Andresen
Also changes mempool to store CTxMemPoolEntries to keep track of when they enter/exit the pool.
2013-11-27Split up bitcoinrpc (code movement only)Wladimir J. van der Laan
Split bitcoinrpc up into - rpcserver: bitcoind RPC server - rpcclient: bitcoin-cli RPC client - rpcprotocol: shared common HTTP/JSON-RPC protocol code One step towards making bitcoin-cli independent from the rest of the code, and thus a smaller executable that doesn't have to be linked against leveldb. This commit only does code movement, there are no functional changes.
2013-11-26Drop fees by 10x due to the persistently higher exchange rate.Mike Hearn
The last fee drop was by 5x (from 50k satoshis to 10k satoshis) in the 0.8.2 release which was about 6 months ago. The current fee is (assuming a $500 exchange rate) about 5 dollar cents. The new fee after this patch is 0.5 cents. Miners who prefer the higher fees are obviously still able to use the command line flags to override this setting. Miners who choose to create smaller blocks will select the highest-fee paying transactions anyway. This would hopefully be the last manual adjustment ever required before floating fees become normal.
2013-11-13tests: add testcases for strprintfWladimir J. van der Laan
2013-11-11configure: Simplify common AM_CPPFLAGS and AM_LDFLAGS to a Makefile.commonLuke Dashjr
2013-11-11Test alerts high at high PROTOCOL_VERSIONsGavin Andresen
I regenerated the alert test data; now alerts are tested against a protocol version way above the current protocol version. So we won't have to regenerate them every time we bump PROTOCOL_VERSION in the future.
2013-11-10Cleanup code using forward declarations.Brandon Dahler
Use misc methods of avoiding unnecesary header includes. Replace int typedefs with int##_t from stdint.h. Replace PRI64[xdu] with PRI[xdu]64 from inttypes.h. Normalize QT_VERSION ifs where possible. Resolve some indirect dependencies as direct ones. Remove extern declarations from .cpp files.
2013-11-08Merge pull request #3223 from TheBlueMatt/masterWladimir J. van der Laan
Test changes
2013-11-08Add a few more basic script/tx test-cases.Matt Corallo
2013-11-04Merge pull request #3076 from lano1106/uint256_utilWladimir J. van der Laan
Make util phexdigit array reusable
2013-11-01Merge pull request #3128Gavin Andresen
0056095 Show short scriptPubKeys correctly (Peter Todd) 22de68d Relay OP_RETURN TxOut as standard transaction type (Peter Todd) Signed-off-by: Gavin Andresen <gavinandresen@gmail.com>
2013-10-29Bug fix: CDataStream::GetAndClear() when nReadPos > 0Gavin Andresen
Changed CDataStream::GetAndClear() to use the most obvious get get and clear instead of a tricky swap(). Added a unit test for CDataStream insert/erase/GetAndClear. Note: GetAndClear() is not performance critical, it is used only by the send-a-message-to-the-network code. Bug was not noticed before now because the send-a-message code never erased from the stream.