Skip to content

Send expression level coverage report #3

@killy971

Description

@killy971

Work branch: https://github.com/guillaume-nargeot/codecov-haskell/tree/expression-level-coverage

Some initial changes were made in a420f6f and 2c8ca35 to propagate additional information required to compute expression level coverage.

The remaining work consist in performing the following transformations:

  • split coverage entries which cover multiple lines into ones that cover only a single line
    • in the case of TopLevelEntry, discard all but the first line in case it is hit at least once
    • splitted lines will have their start column adjusted to the first non-blank character of the covered code
  • "unnest" coverage entries (see this gist for details)

Below are examples html outputs produced by hpc, which is what codecov-haskell should try to reproduce.
These html reports were generated for the same peace of code, with differing variations of coverage.

No coverage at all:
screen shot 2015-01-24 at 10 12 59 am

Coverage when tested with takeUntil (> 1) [] ~=? []:
screen shot 2015-01-24 at 10 13 28 am

Coverage when tested with takeUntil (> 1) [2] ~=? [2]:
screen shot 2015-01-24 at 10 13 42 am

Coverage when tested with takeUntil (> 1) [1, 2] ~=? [1, 2]:
screen shot 2015-01-24 at 10 13 55 am

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions