Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate branch and statement splitting #1657

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jacekv
Copy link

@jacekv jacekv commented Jan 4, 2023

What I did

I ran into some issues as described in #1087 and had a look into the code. I believe that I found the solution in order to show all functions of a contract and if they have been fully covered.

Related issue: #1087, #1642, #1562, #1536

How I did it

I created a sample project using brownie bake token.
In brownie version 1.19.2 when you run brownie test -C, the coverage report shows only results for transferFrom and _transfer. approve, balanceOf and transfer are not shown in the results.

So I went down the rabbit hole and realized, that the modified code has the following statement: branches.keys() & statements.keys()

The approve function has no branches and is therefore not included in the branches.keys() list.
By using the &, we are excluding functions which do not contain branches.

I saw that version 1.14.6 did not have the issue. So, I took the code from v1.14.6 and it all works now.

How to verify it

See the previous section.

Checklist

  • I have confirmed that my PR passes all linting checks
  • I have included test cases
  • I have updated the documentation
  • I have added an entry to the changelog

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant