Run the python tests in a Python container using a custom local action
and a Dockerfile to build the testing environment.
Resolves the issue where setup-python doesn't seem to work with Forgejo
actions (at least for me anyway).
This commit adds a simple side panel to allow users to interact with the
application. The side panel allows the user to:
- Generate and regenerate mazes
- Choose between the searching algorithms
- Choose whether or not to add randomness to the algorithm
- Run and re-run the simulation
Main feature:
- Added functionality to randomly generate a maze before the solver
solves it.
Fixes:
- Add a public method in the Cell class called wall_exists() that
returns true if a given cell wall exists (false otherwise).
Refactors:
- Added an enum type called CellWallLabel for labelling the four cell
walls.
- Added a draw() function in the CellWall class to reduce repeated code.
- Move the custom exceptions to errors.py
Tests:
- Add tests for the custom exceptions.
CI:
- Added a workflow for Forgejo Actions.