gradefast 0.1.18
GradeFast-2019
Gradefast is a framework whose intention is to make eYRC evaluations faster and bring a standardization across task evaluations. Most important benefit is that the test scripts can then be extended and be reused in other themes having similar tasks. Primary thought behind making GradeFast is to take care of all the boundary tasks that happen in theme evaluations and also make utility scripts that take care of other common tasks so that a lot of time is saved. Some of these tasks are downloading new submissions, iterating over each of the submission folders, easily finding files to test, comments based on criterias, uploading marks and plagiarism checking. The framework is also easy to use causing less to no cognitive load on a theme developer using it.
Installing gradefast
Installing from pip
$ pip install gradefast
OR
Installing from sources
$ git clone https://github.com/eyantra-eysip/GradeFast-2019
$ cd GradeFast-2019
$ git checkout develop
$ pip install .
Creating a gradefast project
Do this once [sudo permissions may be required]
npm install -g yo
npm install -g generator-gradefast
Then generate your new project like this
yo gradefast
Features
Submission downloading
Plagiarism checking
Primarily built for python but can support evaluation of any other tasks
Aggregate results
Upload marks
Add comments
Also includes
Detailed error logging
Timing and static code analysis of scripts
Resume tasks from where they are stopped
Checking test conventions
Boilerplate code generation
Running tests
For unit tests: python -m unittest discover -s tests/unit/
For integration tests: python -m unittest discover -s tests/unit/
Checking coverage
Install coverage.py: pip install coverage
Run coverage run --source=gradefast/ -m unittest discover -s tests/unit/ or
coverage run --source=gradefast/ -m unittest discover -s tests/integration/
Generate static html coverage html
cd htmlcov and run http server with live-server or python3 -m http.server
Building and running documentation
Installing required packages
$ pip install sphinx_ustack_theme and pip install sphinx_rtd_theme.
$ pip install --upgrade sphinx
Building docs
$ cd docs
$ make html
Running web server to host documentation
$ cd docs/_build/html
Start a web server in this directory. You can use either the python 3
HTTP server or live-server.
$ python3 -m http.server
Future work
Statistics and analysis of results
Sandboxed environments
Multi-programming
Refactoring
Plugins API
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.