Перейти до змісту

Setup & Tests

This section guides you through everything you need to know to develop the software: build it and make changes.

Clone the Repository

git clone https://github.com/niccokunzmann/open-web-calendar
cd open-web-calendar

Code Quality

We use ruff to improve the code quality. Please install pre-commit before committing. It will ensure that the code is formatted and linted as expected using ruff.

pre-commit install

To format the code before commit without the pre-commit hook, run this:

tox -e ruff

Running Tests

To run the tests, we use tox. tox tests all different Python versions which we want to be compatible to.

pip install -r requirements/dev.in

Run all tests:

tox

Run a specific Python version:

tox -e py39

Browser Testing

We use selenium to test the app in different browsers. By default, Firefox is used. You can test the features like this:

tox -e web

If you like to change the browser, use

tox -e web -- -D browser=firefox
tox -e web -- -D browser=chrome

You can also change the layout of the window to test the responsive design:

tox -e web -- -D window=375x812 # iPhone11 size

Debug Mode

In case the browser tests fail, screenshots are recorded and a link is printed.


Documentation

You can build the documentation with tox, too. It is located in the docs directory.

tox -e docs -- build # ./site
tox -e docs -- serve

We are using mkdocs with the material theme.