/checkproject

A framework to automatically check student projects and giving meaningful feedback to them

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

			    Check-project
			   ===============

Check-project is a framework to automatically evaluate student's
programming assignments.

Features TODO-list
==================
* Scan the test in a directory hierarchy. (done)
* Run the test files in the correct order. (done)
* Stop the test suite if a specific exception is raised. (done)
* Collect a full report for each test and gather it. (done)
* File checking
  - check presence of the required files and directories (done)
  - check the absence of unwanted files
    (executable files, back-up files, ...) (done)

Next in row: Coding style checking

Modules to write
----------------
* Coding style checking (pygments?)
  - Implements a module to check C syntax with proper
    coding style (my coding style).

* Build-system checking
  - run a build with 'make' and check result.
    (think about the timeout and fork-bomb)

* Black-box
  - run a command line with a timeout within a docker/qemu with
    limited amount of memory.

* Memcheck
  - Easy interface for valgrind (and easy results gathering)

* Static-analysis
  - Easy way to integrate new static-analysis checks
    (clang-analyzer plugins ?)