Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Congratulations for this nice example and for Github Education! I'm using a lot!
As explained in the README, some cases may be hard for students... so, perhaps it's better to assume a "clean before test", also to verify that "hello.cpp" has changed (or not), and also also to reinforce deletion of "a.out" to prevent strange errors when it doesn't exist.
Finally, a good thing is to add a ".gitignore" removing "a.out". Since it's an artifact, it's good for students (and for GitHub) to prevent storing it as binary.
I have some other suggestions, that could be put on README perhaps, that I learned on practice. When creating the test cases with Catch, it's useful to add grades to each test separately, such as: "./a.out Test1", "./a.out Test2", etc.
Maybe it's trivial, but I took some days of exploration to finally understand that Catch was able to do such filtering.. which is complementary to simply grading the whole exercise with "make test".
Anyway, feel free to discard or change this if necessary. Regards!