Team members:
- Peter Bonnema
- Mike Hilhorst
- Wiebe van Breukelen
You may view the coverage reports over here: link.
Make sure you are running Python 3.7.* 32-bits. The 64-bits edition is known to have issues with pybind and the TDM-GCC-64 compiler.
To pull all the required dependencies, please run the following commands within a shell:"
git submodule init
git submodule update
Then, you will need to install the required compilers:
- TDM-GCC-32, download version 5.1.0-3 32-bits edition.
- arm-none-eabi toolchain, download latest version.
You will have to setup bmptk and hwlib(with pybind support) aswell.
- The code within the master branch is considered final. This means that it is well tested and reviewed by all the teammembers.
- The development branch will contain code that is considered as work in progress.
- The branches with the prefix feature- are used to develop new features. Eventually, they will be merged to development using pull requests. These pull requests should always be reviewed by a team member who is not assigned onto this specific feature.
Tests are located within the ./tests folder. During the development process, tests are performed locally and remotely using Travis-CI. All test should pass before merging to development and master.
You may run the following command to test locally:
/somewhere/on/your/disk/lemonator (dev)
$ python -m unittest -vOr:
/somewhere/on/your/disk/lemonator (dev)
$ coverage run --branch --source ./simulator --omit=./simulator/*.pyc,./simulator/Interface.py,./simulator/main.py -m unittest -vTo also generate a coverage report. You can also use any Python test explorer in any IDE.
We're using Visual Studio Code as our IDE. Please install the following plugins to setup your work environment:
- autoDocstring; generating python docstrings.
- C/C++; C++ plugin for VS code.
- Catch2 and Google Test Explorer; Testing integration within VS code.
- Python 3