SELab-2 / UGent-6

MIT License
2 stars 0 forks source link

Uploaden extra files voor testen #263

Closed Aqua-sc closed 4 months ago

Aqua-sc commented 4 months ago

In deze PR:

Het is handig voor een prof om bijkomende files te kunnen uploaden voor zijn testen, zo kan hij zijn testen beter structureren en testen in andere talen dan bash schrijven (aangezien het uiteindelijke script dat uitgevoerd wordt altijd bash is)

Werking

De geüploade files worden naar een folder /shared/extra verplaatst. De prof kan vanuit het script dat hij uploadt dan deze files oproepen/inlezen/...

Routes

Aangepast:

Overal waar een testjson terug gegeven wordt is een veld extraFilesUrl toegevoegd. Dit veld is null indien er geen extra files zijn en bevat de url om de extra files te downloaden indien er wel zijn. Bv:

{
    "projectUrl": "/api/projects/1",
    "dockerImage": "fedora:latest",
    "dockerScript": "cat shared/extra/random.txt > /shared/output/helloworld",
    "dockerTemplate": "@helloworld\n>required\n>description=\"Helloworldtest\"\nHello World",
    "structureTest": "helloworld.sh",
    "extraFilesUrl": "/api/projects/1/extrafiles"
}

Toegevoegd:

URL: /api/projects/{projectid}/tests/extrafiles

Disclaimer ❗

Deze PR is nog een draft aangezien de testen nog niet aangepast zijn aan deze changes. Dit ga ik zo snel mogelijk proberen doen

usserwoutV2 commented 4 months ago

Is het mogelijk om ook de naam van het geüploade bestand terug te geven in /api/projects/{projectid}/tests, dan ik deze renderen.

Aqua-sc commented 4 months ago

Is het mogelijk om ook de naam van het geüploade bestand terug te geven in /api/projects/{projectid}/tests, dan ik deze renderen.

De naam van het zipbestand dat geupload wordt, wordt niet behouden. Het wordt opgeslagen als testfiles.zip. Kan da wel nog aanpassen da de naam behouden wordt tho als jullie da beter lijkt

Aqua-sc commented 4 months ago

@usserwoutV2 de filename van het bestand wordt nu teruggegeven in de testJson in een veld met naam extraFilesName