diff options
| author | Joey Jiao <joeyjiaojg@gmail.com> | 2021-07-13 08:10:40 +0800 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2021-07-14 20:01:00 +0200 |
| commit | b9a2f64e4081e5f8f66f00ebb376068d4064daee (patch) | |
| tree | 9839ef85d2c0a47cb9353aa15a66b3c5b01a998d /pkg/cover/report.go | |
| parent | 94e0b7079acc1c1ab28a2043fd21321c978f1529 (diff) | |
all: add /modulecover page
Diffstat (limited to 'pkg/cover/report.go')
| -rw-r--r-- | pkg/cover/report.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/pkg/cover/report.go b/pkg/cover/report.go index c7d96b703..788603119 100644 --- a/pkg/cover/report.go +++ b/pkg/cover/report.go @@ -49,6 +49,7 @@ func MakeReportGenerator(target *targets.Target, vm, objDir, srcDir, buildDir st } type file struct { + module string filename string lines map[int]line functions []*function @@ -76,6 +77,7 @@ func (rg *ReportGenerator) prepareFileMap(progs []Prog) (map[string]*file, error files := make(map[string]*file) for _, unit := range rg.Units { files[unit.Name] = &file{ + module: unit.Module.Name, filename: unit.Path, lines: make(map[int]line), totalPCs: len(unit.PCs), @@ -92,7 +94,7 @@ func (rg *ReportGenerator) prepareFileMap(progs []Prog) (map[string]*file, error } matchedPC := false for _, frame := range rg.Frames { - f := getFile(files, frame.Name, frame.Path) + f := getFile(files, frame.Name, frame.Path, frame.Module.Name) ln := f.lines[frame.StartLine] coveredBy := progPCs[frame.PC] if len(coveredBy) == 0 { @@ -190,10 +192,11 @@ func (rg *ReportGenerator) lazySymbolize(progs []Prog) error { return nil } -func getFile(files map[string]*file, name, path string) *file { +func getFile(files map[string]*file, name, path, module string) *file { f := files[name] if f == nil { f = &file{ + module: module, filename: path, lines: make(map[int]line), // Special mark for header files, if a file does not have coverage at all it is not shown. |
