7cf9ec8190
This modifies the ports that are selected for use for the p2p and rpc ports to start with a port that is based on the process id instead of a hard-coded value. The chosen ports are incremented for each running instance similar to the previous code except the p2p and rpc ports and now split into ranges instead of being 2 apart. This is being done because the previous code only worked for a single process which means it prevented the ability to run tests in parallel. The new approach will work with multiple processes, however it must be stated that there is still a very small probability that the stars could align resulting in the same ports being selected. Finally, this also reverts the recent change to run tests serially since this fixes the underlying cause for that change. |
||
---|---|---|
.. | ||
blockgen.go | ||
doc.go | ||
memwallet.go | ||
node.go | ||
README.md | ||
rpc_harness.go | ||
rpc_harness_test.go | ||
utils.go |
rpctest
[] (https://travis-ci.org/btcsuite/btcd) ![ISC License] (http://img.shields.io/badge/license-ISC-blue.svg) [] (http://godoc.org/github.com/btcsuite/btcd/rpctest)
Package rpctest provides a btcd-specific RPC testing harness crafting and
executing integration tests by driving a btcd
instance via the RPC
interface. Each instance of an active harness comes equipped with a simple
in-memory HD wallet capable of properly syncing to the generated chain,
creating new addresses, and crafting fully signed transactions paying to an
arbitrary set of outputs.
This package was designed specifically to act as an RPC testing harness for
btcd
. However, the constructs presented are general enough to be adapted to
any project wishing to programmatically drive a btcd
instance of its
systems/integration tests.
Installation and Updating
$ go get -u github.com/btcsuite/btcd/rpctest
License
Package rpctest is licensed under the copyfree ISC License.