The utility you need to easily configure auto-grading
Project description
Gradema
The utility you need to easily configure auto-grading.
https://pypi.org/project/gradema/
https://gradema.readthedocs.io
Python 3.10 required.
Try it out
poetry install
poetry run python -m example.binaryconvert.autograder
Dependencies for student machines
Since Gradema will be published on Pypi, getting this to work should be as simple as having these things installed, then letting an installer script do the rest:
- venv is installed
- Dependencies for libmagic are installed
- No action is required unless you are running this on Windows and are not using Git Bash
- See https://github.com/ahupp/python-magic?tab=readme-ov-file#installation
Project Structure
gradema- Contains all the code for gradema
example- Contains example usages of gradema
tests(not yet created)- Contains unittests to test the functionality of gradema.
- This is the only place unit tests exist for the project itself. A "unit test" in another location is likely just an example unit test that does not test the functionality of gradema itself
Development
Goals
- This should be a thin wrapper around shell commands which actually run tests. This allows people to debug the smaller components themselves. The autograder should be a tool to help people understand these components, rather than a black box.
- We need to be able to run
pudb -m ...and have it launch right into the user's code
- We need to be able to run
Running Tests
All tests are located in the tests directory, so you must explicitly state that directory, otherwise some tests will be incorrectly picked up in other directories.
poetry run pytest tests
TODO
- Use py2cfg to produce control flow graphs
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gradema-0.0.2.tar.gz.
File metadata
- Download URL: gradema-0.0.2.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.10.12 Linux/6.8.0-76060800daily20240311-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07f8c124416dbc8455200410b566fc205e1398f8d809eaba99a5525ae7d65806
|
|
| MD5 |
c986a5acb908ecf74b4696b37f884dfc
|
|
| BLAKE2b-256 |
915757ff66a155728dc210d3101ed85205b66eee2352346b835934a35d7f7619
|
File details
Details for the file gradema-0.0.2-py3-none-any.whl.
File metadata
- Download URL: gradema-0.0.2-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.10.12 Linux/6.8.0-76060800daily20240311-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bedad8cb450866aef4a2601f3c97b04173c76e3e125d5faf264748c1faa758a3
|
|
| MD5 |
5534fb108ee24b9ee3555e4bec3ea4f0
|
|
| BLAKE2b-256 |
9181a983a838fd8eb53f77390e7640dbf92f182e263a7a3f0e0b61fb8e47b428
|