This guide references utility shell scripts that were written to automate common tasks. You can find them in the [scripts](./scripts) directory.
These scripts are currently suited to **Linux** and **macOS**, but we would happily take PRs to help us make them more cross-compatible or update the instructions.
> **NOTE**: before writing any code, please first consider [opening an issue][issues] to discuss your ideas with the maintainers.
Your Python version will be verified and the virtual environment created using the `python3` executable. To use another executable, use the `-p` option, e.g.:
The tests are written using [pytest] and located in the `tests/` directory.
**Note**: tests should be run before making any changes to the code in order to make sure that everything is running as expected.
We provide a stand-alone **test script** to run tests in a reliable manner. Run it with:
```bash
./scripts/test
```
By default, tests involving a database are excluded. To include them, set the `STARLETTE_TEST_DATABASE` environment variable to the URL of a PostgreSQL database, e.g.: