aboutsummaryrefslogtreecommitdiff
path: root/qa/rpc-tests/maxblocksinflight.py
AgeCommit message (Collapse)Author
2016-05-15[qa] Remove hardcoded "4 nodes" from test_frameworkMarcoFalke
2016-05-05[qa] Switch to py3MarcoFalke
2016-04-03[qa] maxblocksinflight: Actually enable testMarcoFalke
2016-01-05Add missing copyright headersMarcoFalke
2015-12-04test: remove necessity to call create_callback_mapWladimir J. van der Laan
Remove necessity to call create_callback_map (as well as the function itself) from the Python P2P test framework. Invoke the appropriate methods directly. - Easy to forget to call it and wonder why it doesn't work - Simplifies the code - This makes it easier to handle new messages in subclasses
2015-05-18[QA] restructure rpc tests directoryJonas Schnelli
* move non-test classes to subdir `test-framework`
2015-05-01Fix potential race conditions in p2p testing frameworkSuhas Daftuar
Previously, each NodeConnCB had its own lock to synchronize data structures used by the testing thread and the networking thread, and NodeConn provided a separate additional lock for synchronizing access to each send buffer. This commit replaces those locks with a single global lock (mininode_lock) that we use to synchronize access to all data structures shared by the two threads. Updates comptool and maxblocksinflight to use the new synchronization semantics, eliminating previous race conditions within comptool, and re-enables invalidblockrequest.py in travis.
2015-04-29Fix default binary in p2p tests to use environment variableSuhas Daftuar
2015-04-28Python p2p testing frameworkSuhas Daftuar
mininode.py provides a framework for connecting to a bitcoin node over the p2p network. NodeConn is the main object that manages connectivity to a node and provides callbacks; the interface for those callbacks is defined by NodeConnCB. Defined also are all data structures from bitcoin core that pass on the network (CBlock, CTransaction, etc), along with de-/serialization functions. maxblocksinflight.py is an example test using this framework that tests whether a node is limiting the maximum number of in-flight block requests. This also adds support to util.py for specifying the binary to use when starting nodes (for tests that compare the behavior of different bitcoind versions), and adds maxblocksinflight.py to the pull tester.