{"id":13305848,"url":"https://github.com/UgiR/gradescope-autograde-cpp","last_synced_at":"2025-03-10T14:32:16.410Z","repository":{"id":130289291,"uuid":"229196172","full_name":"UgiR/gradescope-autograde-cpp","owner":"UgiR","description":"Gradescope Autograder Starter Template with C++ Tooling","archived":false,"fork":false,"pushed_at":"2020-01-20T00:47:53.000Z","size":69,"stargazers_count":5,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-09T03:06:03.161Z","etag":null,"topics":["autograder","cpp","gradescope"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/UgiR.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-12-20T05:28:30.000Z","updated_at":"2022-10-12T00:41:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"f2295316-0fe1-49a0-b8b8-9dc3a053c1cc","html_url":"https://github.com/UgiR/gradescope-autograde-cpp","commit_stats":null,"previous_names":[],"tags_count":2,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UgiR%2Fgradescope-autograde-cpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UgiR%2Fgradescope-autograde-cpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UgiR%2Fgradescope-autograde-cpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UgiR%2Fgradescope-autograde-cpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UgiR","download_url":"https://codeload.github.com/UgiR/gradescope-autograde-cpp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242868485,"owners_count":20198490,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autograder","cpp","gradescope"],"created_at":"2024-07-29T17:54:36.748Z","updated_at":"2025-03-10T14:32:16.395Z","avatar_url":"https://github.com/UgiR.png","language":"Python","readme":"# Gradescope Autograder for C++\n\nDownload v1.1: [autograder.zip](https://github.com/UgiR/gradescope-autograde-cpp/releases/download/v1.1/autograder.zip)\n\nTo use new features in the master branch, clone or download this repository.\n\n### Configuration\n\nIn `config.yml`, define all files that must be submitted by the student.\n\nExample `config.yml`:\n\n```\nlimit_submissions: -1  # limit number of submissions accepted. Set to -1 for unlimited (default: -1)\nrequired_files:\n  - student_file.h\n```\n\nIf any of the required files are missing, the autograder terminates with a message indicating a missing file.\n\nIf all required files are submitted, they are moved into the `/autograder/tests` directory.\n\n### Writing Tests\n\nCreate a new directory under `/autograder/tests`. This is where you can include any test files.\n\nFiles:\n\n* `run_test` (required):\n\n    In order for the autograder to be able to run the test, you must include a `run_test` executable file that runs\n    the test. This can be in any language, so make sure it includes a shebang line (`#!/usr/bin/env bash` for example).\n\n* `test.yml` (optional)\n\n    This is the configuration for the specific test.\n\n    Example `test.yml` file:\n\n    ```\n    weight: 15.0  # weight/score of the test (default: 1)\n    name: 'BST balancing'  # (default: '')\n    message: 'insert() must maintain a balanced BST'  # (default: '')\n    show_output: false  # whether to display stdout/stderr output on failure (default: true)\n    timeout: 10  # test fails if it does not finish running in 10 seconds (default: null)\n    visibility: hidden  # controls visibility of test case to students (default: visible)\n    ```\n\n* Any other files that `run_test` requires.\n\n#### CLI\n\nTo facilitate the process of writing tests, it is possible to generate new test directories via command line.\n\nExample:\n\n```\n./grader add test -d my_new_test\n```\n\nExecuting this command will generate a new directory named \"my_new_test\" with a pre-populated `config.yml` file and an\nempty `run_test` file.\n\n#### Student submitted files\n\nAs specified above, the files listed in `config.yml` are moved into `/autograder/tests`. In the context of any\nindividual test directory, these files are found in its parent directory.\n\n### Example output\n\n![Gradescope output](https://i.imgur.com/Gsb3lMg.png)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FUgiR%2Fgradescope-autograde-cpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FUgiR%2Fgradescope-autograde-cpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FUgiR%2Fgradescope-autograde-cpp/lists"}