Testing

All the below commands should be run from inside the credentials container.

The command below runs all of the Python and JS tests:

$ make tests

Acceptance tests can be run like so:

$ make accept

Code quality validation (e.g. linters) can be run independently with:

$ make quality

The Python tests can be run independently with:

$ pytest --ds credentials.settings.test

The react js tests can be run independently with:

$ make test-react

The js quality tests can be run independently with:

$ make quality-js

Writing Python Tests

Tests should be written for all new features. The Django docs are a good resource for learning how to test Django code.

Writing JS tests

All new front-end features should be made with React, subsequently, all tests written for those features should use the Jest testing framework.