Some files didn't be exposed in Codecov Report

I have been taking a look into tests for Sanic recent days, and I found there are some files didn’t be exposed in Codecov Report.

When I check the report, it shows that Sanic contains 17 files. But actually, there are 20 files(total 21 files but __main__.py is omit by .coveragerc). And, the missing files are: sanic/blueprints.py, sanic/server.py, sanic/websocket.py.

For example, @harshanarayana was sending an amazing PR about blueprint groups(thanks to him), this PR actually changes some lines of code in sanic/blueprints.py. And you can see that Codecov didn’t report sanic/blueprints.py in Impacted Files.
image

Furthermore, If there is a new PR only modify those three files, The code coverage will not be changed even there are thousands of code be added.

This might not influence the functionality of Sanic but I still hope that code coverage can be a quality assurance of Sanic. Let me know your thoughts.

@chenjr0719 I am looking at this now …

You are right … this is unexpected.

The Impacted Files section of that codecov generally points to the file that has a delta in the coverage value as part of the current PR.

For example if you modify a specific file but the modification did not expect you to change your existing unit tests and you didn’t add any additional tests to modify the existing coverage value for that file, it gets missed from the snippet that gets pushed as a comment in your git PR.

As for the coverage value issue, it’s a pretty well known but kept in down low kinda issue that exists there.

@ahopkins @chenjr0719 We can try out Coverall and see if that’s any better if we want.

I also have used codacy without problem on sanic-jwt.

I’m not opposed to making a change, or adding another. I have a pending inquiry with Codecov to figure that one out.