Open frozenfrank opened 2 weeks ago
You mention that new features should have tests. Do we run our test cases currently before deployment? If not, can we set a GitHub action that runs all the test cases before you're allowed to merge a pull request, in the same way we check it compiles and has valid type-checking? @frozenfrank @19mdavenport
You mention that new features should have tests. Do we run our test cases currently before deployment? If not, can we set a GitHub action that runs all the test cases before you're allowed to merge a pull request, in the same way we check it compiles and has valid type-checking? @frozenfrank @19mdavenport
Yes!
We already have a GitHub Actions workflow that runs on every push (on every branch) and reports whether all the test pass or not. This currently runs two checks:
We also have another action set up that runs only when code is pushed to the main
branch which runs the Integration tests. Based on the most recent commit message in that folder, it appears that the CanvasIntegrationTest
has been disabled recently...
The point is that we do have the infrastructure in place to evaluate tests and ensure we have high-quality code!
You may have noticed the green checkmarks— or red Xs— indicating the status of these "Actions" (screenshots). Notice that these marks are replaced with a yellow dot while the checks are currently running.
When a PR is merged
Attached to any commit that was the head of the branch when a branch was pushed
In the browser tab favicon image
On the PR page
And surely in many other places!
In #423, I pushed my code and requested a review on the PR. However, I then received an email that I had failed the tests! I was able to look and find where I had made the mistake in the code in order to correct it. This history is all presented and displayed within the Pull Request page:
Overview
GitHub specially treats the CONTRIBUTING.md file. We should leverage this behavior to help future people contribute to the project.
Details to Include
Important notes to include:
Other Examples
Places to Update
Other Ideas
What other things should we include in the document?