Package: tmc-course
TMC Course creation helpertmc-coursehelps with managing (python-based) TestMyCode courses by allowing you to initialize, update and test them.Installingpip install tmc-courseUsageusage: tmc-course [-h] [--version] [--quiet | --debug] ACTION ...

Helper for building TestMyCode python programming courses

positional arguments:
  ACTION
    init       Initialize a new course, part or assignment
    test       Test a new course, part or assignment
    update     Update TMC-python-runner embedded in assignments

options:
  -h, --help   show this help message and exit
  --version    show program's version number and exit
  --quiet, -q  Only output warning
  --debug, -d  Output debugging informationtmc-course init- Initialize new courses, parts and assignmentsRun theinitcommand to initialize a new course, part of assignment from a project skeleton that contains the files required by TMC to function correctly.Initialize new courseusage: tmc-course init course [-h] path [path ...]

positional arguments:
  path        Path(s) of the new course(s)

options:
  -h, --help  show this help message and exitInitialize new partParts are collections of assignmentsusage: tmc-course init part [-h] path [path ...]

positional arguments:
  path        Path(s) of the new part(s)

options:
  -h, --help  show this help message and exitInitialize new assignmentAssignments are initialized in either English (-e) or Finnish (-f). The freshly initialized assignments are built with a skeleton structure which showcases the use of tests and points, and contains the additional files required by TMC.usage: tmc-course init assignment [-h] (-e | -f) path [path ...]

positional arguments:
  path           Path(s) of the new assignment(s)

options:
  -h, --help     show this help message and exit
  -e, --english  Use English language templates
  -f, --finnish  Use Finnish language templatestmc-course updateUpdate TMC filesTheupdatecommand updates the files required by TMC for all assignmentsusage: tmc-course update [-h] path

positional arguments:
  path        Course root directory

options:
  -h, --help  show this help message and exittmc-course testRun tests for the courseUse thetestcommand to run the tests for a course, part or assignment the same way the TMC server would run them. This verifies your model solutions pass the tests.usage: tmc-course test [-h] [--details] path [path ...]

positional arguments:
  path        Path(s) to test (course, part or assignment)

options:
  -h, --help  show this help message and exit
  --details   Show more details about test resultsBy default, detailed information is only shown about assignments that fail
their tests. Use--detailsto show additional help.As apre-commithooktmc-coursecan be used as apre-commithook. When set up correctly,tmc-course testis ran for the repository on commit.To usetmc-courseas apre-commithook, add the the following config:- repo: https://github.com/ljleppan/tmc-course
    rev: v1.0.0b6
    hooks:
      - id: tmc-courseDevelopmentInstallingpip install .[dev]
pre-commit installPre-commit hooksThe repo comes set up for a combination ofmypy,black,flake8andisort. These are all set up aspre-commithooks. Assuming you runpre-commit installas shown above, these will automatically run whenever you attempt to commit code into git. I suggest runningmypyusing--strict.Tox and testsRuntoxto manually run all pre-commit hooks and tests. Tests fail if test coverage goes below 80 %.