Team-Gibberish / agile_snails_coding_challenge

MIT License
0 stars 0 forks source link

CodingChallenge

Python Tests

AIMLAC Coding Challenge

Aims & Objectives

Installation

Currently, only building and installing from source is available.

Installing the anaconda environment

The conda environment is defined in environment.yml

Building the frontend

For details about the frontend, see webpage/README.md

Installing the package

This would be used for deployment, but does not have a use while developing. Infact, installing the module might break testing with conflicted imported modules.

"conda activate sjautobidder;",
"python -m build .;",

# Optionally install with pip. --force-reinstall ensures it is installed
# even if the version has not been bumped.
"python -m pip install .\\dist\\sjautobidder-0.0.1-py3-none-any.whl --force-reinstall",

The distributable module is outputted to the dist/ folder, in both pip-installable .whl format and as a compressed .tar.gz folder.

Docker-compose

To start the docker container, make sure you have run the steps under Installing the package, then navigate to the root of the project and run:

docker build -t codingchallenge .
docker run -dp 80:80 codingchallenge

Linting

To lint the project:

Testing

To test the project:

To generate a coverage report:

Contributing

When committing code that may effect more than just your owned files, please open a pull request instead and tag the writer of the code you changed.

We use black as our formatting guide, and is recommended you run the formatter on your code before committing.

For doc comments, each function must be commented alongside a top-level module comment. The standard we have adopted is the Google Standard. Note that incorrect docs will be picked up as the linter and reported as errors. Please run the linter before committing!

Github actions will run pytest and linting on pull requests and commits, so pleasure be sure that your code conforms!

Pre-commit check list