gubernator icon indicating copy to clipboard operation
gubernator copied to clipboard

More unit tests needed + Upload code coverage to CodeCov

Open miparnisari opened this issue 1 year ago • 1 comments

make test in master currently reports 49.0% code coverage overall. There are multiple critical code paths not covered with tests. For example:

  • algorithms.go only has 81% and is arguably the most important piece of code.
  • global.go only has 84.2% and has no unit tests (😱)

It would be nice if, going forward, we block PRs that do not include tests. I suggest enabling Codecov through https://github.com/marketplace/codecov and uploading code coverage in every PR and for every push to main.

For example: https://github.com/openfga/openfga/blob/164963facc61241e1378d8fefb6632c700407163/.github/workflows/pull_request.yaml#L49-L57

The end goal would be the overall code coverage to a healthier number.

miparnisari avatar Jan 22 '24 03:01 miparnisari

I think it would be sufficient to link make test to a GitHub Action that indicates a threshold as a warning, though would be best not to enforce it for now.

Some quick searches revealed:

  • https://github.com/marketplace/actions/go-coverage
  • https://medium.com/synechron/how-to-set-up-a-test-coverage-threshold-in-go-and-github-167f69b940dc

This would be a welcome addition to the repo.

Baliedge avatar Feb 21 '24 16:02 Baliedge