lbcd/rpctest
Dave Collins 754c4fbe0c
rpctest: Gate rpctest-based behind a build tag.
This adds a new build tag named rpctest which must be set in order for
rpctest-based tests to be executed.  The new build tag is also added to
the goclean.sh script which is executed by Travis during continuous
integration builds.

This change is being made because the rpctest framework requires
additional careful user configuration to ensure the version of btcd
under test can be programmatically launched from the system path with
all of the necessary ports open whereas all of the other tests are
self-contained within the test binary itself.

Since said additional configuration is typically not done, it leads to a
lot of false positives.  Putting the tests behind a build tag allows
them to remain to be available and run during continuous integration
without imposing the additional configuration requirements on users.
2016-09-26 01:20:31 -05:00
..
blockgen.go rpctest: create new rpctest package 2016-08-19 17:37:08 -05:00
doc.go rpctest: create new rpctest package 2016-08-19 17:37:08 -05:00
memwallet.go Update dependencies and API usage. 2016-09-21 20:50:55 -04:00
node.go rpctest: create new rpctest package 2016-08-19 17:37:08 -05:00
README.md rpctest: create new rpctest package 2016-08-19 17:37:08 -05:00
rpc_harness.go rpctest: Fix typo 2016-09-22 00:14:51 -04:00
rpc_harness_test.go rpctest: Gate rpctest-based behind a build tag. 2016-09-26 01:20:31 -05:00
utils.go rpctest: Use ports based on the process id. 2016-09-20 16:59:37 -05:00

rpctest

[Build Status] (https://travis-ci.org/btcsuite/btcd) ![ISC License] (http://img.shields.io/badge/license-ISC-blue.svg) [GoDoc] (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.