From d612cec14c021b9d178e0a513c59fdfcb5f0e66c Mon Sep 17 00:00:00 2001 From: nprimo Date: Mon, 19 Sep 2022 11:19:38 +0100 Subject: [PATCH] update README.md: add steps to run tests --- README.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/README.md b/README.md index 24a3ace..a0fd908 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,46 @@ # qa A content repository to allow QA testing from a user perspective, using the platform. + +## Run tests on platform + +### Set up VM + +1. Set up a piscine + For example, duplicate the go piscine and put Quest2 "on top" + (put the tester user in the piscine) + Set the `language` (type `STRING`) in the `Children Attributes` as `goqa` + +2. Mirror the `qa` repo from github in the root gitea + Create a `New Migration`from the Github repo `https://github.com/01-edu/qa` + Tick the `Migration Options`: `This repository will be a mirror` + Untick the `Visibility` option + +3. Set up a new "dummy exercise" + The name of the exercise must match one of the exercises available in the + repository `https://github.com/01-edu/qa` + Add the following `Object Attributes` + * `language` (type `STRING`): `goqa` + * `subject` (type `STRING`): `/markdown/root/qa/go/subjects//README.md` + * `expectedFiles` (type `ARRAY`): + * `Add a new index in array` with the expected files, most likely + `/main.go` if the exercise is a program or `.go` if a function + +## Run tests locally + +### Example for the `piscine-go` + +1. Create a directory to place the solution to be tested, for example `mkdir piscine-go` or `git clone ` in the `qa` directory +2. run the following commands in the following location `./qa/piscine-go/`: +```bash +go mod init piscine +go mod tidy +``` +2. Update all the required files for the selected exercise(s) +3. Run `./go/test_all.sh` or `./go/test_one.sh ` + +## Importan notes + +The following repositories aims to provide a close to production testing environment. To ensure this, check that the followings are in line with the respositories used for the current platform: + +* **For GO exercises:** the organization of the `tests` and `solutions` directories combined with the `lib` functions used to run the tests are the same as the one used for the working platform \ No newline at end of file