Skip to content

Latest commit

 

History

History
51 lines (35 loc) · 1.19 KB

CONTRIBUTING.md

File metadata and controls

51 lines (35 loc) · 1.19 KB

Development

modeStep uses poetry for project management and development tasks. The project's Makefile also contains targets for common tasks.

Testing

Tests work by opening Live, impersonating the MIDI output of the SoftStep, and checking the messages that Live sends back.

To get this working, you need to configure a "modeStep" control surface to use "modeStep test" as its inputs and outputs. However, that source won't show up until tests are actually running, so you'll need to configure the control surface manually while you're running tests for the first time.

You can safely add this test control surface alongside your primary modeStep control surface, if you don't want to deal with switching the input/output when you want to run tests.

To run tests, use:

make test

For debug output:

DEBUG=1 make test

To run only e.g. specs tagged with @now:

poetry run pytest -m now

Linting and type checks

Before submitting a PR, make sure the following are passing:

make lint # Validates code style.
make check # Validates types.

Some lint errors can be fixed automatically with:

make format