https://github.com/cpp-for-yourself/homework_checker
✅ A homework checker used to automatically check students' homeworks
https://github.com/cpp-for-yourself/homework_checker
automation bash checker cpp education python students test
Last synced: 11 months ago
JSON representation
✅ A homework checker used to automatically check students' homeworks
- Host: GitHub
- URL: https://github.com/cpp-for-yourself/homework_checker
- Owner: cpp-for-yourself
- License: apache-2.0
- Created: 2020-11-15T20:23:00.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-03-20T16:41:38.000Z (about 2 years ago)
- Last Synced: 2024-05-01T21:24:25.861Z (almost 2 years ago)
- Topics: automation, bash, checker, cpp, education, python, students, test
- Language: Python
- Homepage:
- Size: 162 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Homework checker #
This is a python module and script that can be used to check homeworks.
The idea behind the script is the following:
- There is a homework yaml file, see [`homework.yml`](homework_checker/core/tests/data/homework/example_job.yml) that follows the [schema](schema/schema.yml)
- In this file we define the structure of the homework
- The homework checker library knows how to execute certain types of tasks following the guides in the yaml file
It is expected that the submitted homework will follow the folder structure specified in the `homework.yml` file.
## Core functionality ##
### Run different tests ###
For now we support running tests for code written in different languages:
- c++
- bash
### Inject data into homeworks ###
We sometimes want to inject a certain folder before running tests, there is an option to do this here.
## How it works ##
I will probably not go into details here at this level of the package maturity. For now you can start digging from the [`check_homework.py`](homework_checker/check_homework.py) script and hopefully the code is clear enough. You can also look at the [`homework.yml`](homework_checker/core/tests/data/homework/example_job.yml) file that we use to test all the implemented functionality.