On my machine it should have produced: /tmp/ltests-1p0v5z1j/.locks/lock-1631090663.1066182 but instead it produced: /private/tmp/ltests-1p0v5z1j/.locks/lock-1631090663.105848 The mismatch resulted in a hang inside flock. Path .resolve() seems to be causing problems for others as well. It appears the library was not meant to handle complex path situations and isn't maintained as such (see link reference). Since we have already built a full path here anyway, the call to .resolve() appears redundant. Tested on python 3.9.6 on my Mac OS X 11.4 (20F71), Xcode 12.5.1 (12E507) Relevant discussion: https://discuss.python.org/t/pathlib-absolute-vs-resolve/2573 |
||
---|---|---|
.. | ||
pyln/testing | ||
tests | ||
Makefile | ||
README.md | ||
requirements.txt | ||
setup.py |
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.