stephenneale / seng371-group16

Contains Group 16's work for SENG371 A02 - Group 16, Spring 2023
0 stars 1 forks source link

Create summary document for Assignment 2 #37

Closed matt-lebl closed 1 year ago

matt-lebl commented 1 year ago

Summarise changes that we made to requirements doc, architecture diagram, etc., also link to new documents like Request for Changes. Summarise new functionality coded in app, and also explain configured CI/CD.

matt-lebl commented 1 year ago

@stephenneale may you please summarise for me the frontend CI stuff that you implemented? How it works, if it runs tests, etc. :smiley:

stephenneale commented 1 year ago

Frontend CI Implementation Summary

The Django based frontend of the DimSpace project is now tested whenever changes are pushed to the repo. The tests are initiated by a new workflow file dimspace-ci.yml, which utilizes Python 3.9 and Django's built in testing feature to check whether any recent changes end up breaking the frontend. This built in feature runs the tests.py file within the dimapp/ folder, in which some basic response checking tests have been added.

How it works:

  1. Upon a push or pull-request to the repository, the CI workflow file dimspace-ci.yml is automatically run. This file first sets up a Python 3.9 environment to run the procedure in.
  2. The file then invokes Django's built in testing functionality off the main manage.py file via python3 manage.py test
  3. The Django testing functionality then checks tests.py, and runs any classes that have test at the start of their name, while running the setUp class beforehand.
  4. If all test cases pass, no error is returned and the workflow cleans up the testing environment.