Open
Description
Implement a basic code coverage support, and setup CI/CD to start monitoring the coverage status of internal components, through testing the examples/
and gnovm/tests
directories.
Bounty Requirements
- Within the GnoVM, a system is added which keeps a tally of the lines executed
- Ideally this should be similar to Go's, where simple "increment" statements are added to the appropriate lines; this way the addition of the feature doesn't impact the normal execution performance of the GnoVM
- Upon investigation, a different approach can be taken if necessary
- In the
gno test
command, after each package is tested, if the-cover
flag is passed, the VM prints a simple percentage of the covered lines, like the result ofgo test
:ok gno.land/p/demo/... 0.035s coverage: 75.1% of statements
- what
-cover
considers a statement to cover should match what Go considers- ie. transpiling the source of a Gno program into Go (
gno transpile
), then running tests, should yield the same %.
- ie. transpiling the source of a Gno program into Go (
Bounty Size: L; expected maximum reward: $4,000.
Find out more on the bounty program. If you participate with intention of receiving the bounty, you must agree to the Bounty Terms and Conditions.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Triage
Status
Todo