Description
Not sure if this is just me but Codecov seems to not be reporting Kotlin’s “companion objects” as part of the code coverage lines even though the project level reporting seems to be including them just find. Below are the examples of repositories which experiencing this issue.
Repository
- Codecov
- /gh/Karn/instagram-sdk/src/develop/library/src/main/java/io/karn/instagram/Instagram.kt#L18
- /gh/Karn/khttp-android/src/develop/library/src/main/java/khttp/KHttp.kt#L19
- /gh/Karn/notify/src/master/library/src/main/java/io/karn/notify/Notify.kt#L40
Steps to Reproduce
- Create a Kotlin class with a companion object.
- Write a simple test which involves said class.
- Use JaCoCo to generate code coverage.
Expected behavior: The line companion object {
to be included as part of the code coverage.
Actual behavior: The line companion object {
is not included as part of the code coverage.
Flakiness? This occurs all the time.
Versions
N/A
Additional Information
— An example of the output generated locally by the JaCoCo plugin which does not mark the linecompanion object {
as a line which is not covered by testing. This refers to the first bullet point above.
Happy to provide more details as needed.