Development

This section contains notes of interest for those wishing to contribute to Brush.

Documentation

Documentation is built using Sphinx. Either cd to the docs directory and run make html (make.bat html on Windows) or run make docs from the repository root directory.

Testing

Tests are run using the pytest testing suite. To run tests using your default version of Python, first install the development requirements with:

$ pip install -r requirements-dev.txt

Tests may now be run by invoking:

$ make test

in the repository root directory. Alternatively, tox may be used to automate testing on multiple versions of Python:

$ tox

Some tests may be run without access to a real comb. The default behavior is to skip these tests. In order to force run them, run py.test with at least the environment variable MENLO_COMB_HOST defined to give the hostname for the computer controlling the frequency comb. Other valid environment variables for comb testing are MENLO_COMB_PORT, MENLO_COMB_USER, and MENLO_COMB_PASSWORD. When these are not given, the default values in the brush.comb.FrequencyComb constructor are used.