rgb-cln/contrib/pyln-testing
Rusty Russell e6ba66063e pytest: don't valgrind plugins under CI if many nodes.
Just pick one at random to trace fully.

Eg. test_gossip.py::test_getroute_exclude (creates 5 nodes)

Before:
	%MEM VSZ      RSS
	27.6 15941008 5106764

After:
	%MEM VSZ      RSS
	15.6 12234844 3009016

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2021-11-27 12:41:37 +00:00
..
pyln/testing pytest: don't valgrind plugins under CI if many nodes. 2021-11-27 12:41:37 +00:00
tests pyln-testing: Add a dummy test to check functionality 2020-08-30 20:03:42 +02:00
Makefile Skip following import and skip flask type to mypy code analysis. 2021-08-30 12:12:32 +09:30
README.md pyln-testing: Copy basic support infrastructure into pyln.testing 2019-11-12 21:23:55 +01:00
requirements.txt pytest: add schema support for JSON responses. 2021-05-27 20:28:49 +09:30
setup.py pyln: Derive version from git for pyln-testing 2021-09-28 18:34:43 +02:00

README.md

pyln-testing: A library to write tests against c-lightning

This library implements a number of utilities that help building tests for c-lightning nodes. In particular it provides a number of pytest fixtures that allow the management of a test network of a given topology and then execute a test scenarion.

pyln-testing is used by c-lightning for its internal tests, and by the community plugin directory to exercise the plugins.

Installation

pyln-testing is available on pip:

pip install pyln-testing

Alternatively you can also install the development version to get access to currently unreleased features by checking out the c-lightning source code and installing into your python3 environment:

git clone https://github.com/ElementsProject/lightning.git
cd lightning/contrib/pyln-testing
python3 setup.py develop

This will add links to the library into your environment so changing the checked out source code will also result in the environment picking up these changes. Notice however that unreleased versions may change API without warning, so test thoroughly with the released version.