diff options
| author | Taras Madan <tarasmadan@google.com> | 2025-04-10 14:16:42 +0200 |
|---|---|---|
| committer | Taras Madan <tarasmadan@google.com> | 2025-04-30 13:27:27 +0000 |
| commit | ce7952f4e369f2440b2bc369868df305c42bf7d6 (patch) | |
| tree | 751a33beb2e15bcd3032534117ff0fe9cab69806 /pkg | |
| parent | 254b4cda876789c00ce81a7f9cbb2851205c336d (diff) | |
dashboard/app: send coverage report to ns-defined email
We periodically send coverage reports for the regressions detection.
Diffstat (limited to 'pkg')
| -rw-r--r-- | pkg/cover/heatmap.go | 14 | ||||
| -rw-r--r-- | pkg/cover/heatmap_test.go | 2 |
2 files changed, 12 insertions, 4 deletions
diff --git a/pkg/cover/heatmap.go b/pkg/cover/heatmap.go index e6458c36b..672312fee 100644 --- a/pkg/cover/heatmap.go +++ b/pkg/cover/heatmap.go @@ -145,12 +145,20 @@ func (thm *templateHeatmapRow) prepareDataFor(pageColumns []pageColumnTarget) { } } +func (thm *templateHeatmapRow) Visit(v func(string, int64), path ...string) { + curPath := append(path, thm.Name) + v(strings.Join(curPath, "/"), thm.Summary) + for _, item := range thm.Items { + item.Visit(v, curPath...) + } +} + type pageColumnTarget struct { TimePeriod coveragedb.TimePeriod Commit string } -func filesCoverageToTemplateData(fCov []*coveragedb.FileCoverageWithDetails) *templateHeatmap { +func FilesCoverageToTemplateData(fCov []*coveragedb.FileCoverageWithDetails) *templateHeatmap { res := templateHeatmap{ Root: &templateHeatmapRow{ IsDir: true, @@ -223,7 +231,7 @@ func DoHeatMapStyleBodyJS( if err != nil { return "", "", "", fmt.Errorf("failed to FilesCoverageWithDetails: %w", err) } - templData := filesCoverageToTemplateData(covAndDates) + templData := FilesCoverageToTemplateData(covAndDates) templData.Subsystems = sss templData.Managers = managers FormatResult(templData, dataFilters) @@ -252,7 +260,7 @@ func DoSubsystemsHeatMapStyleBodyJS( ssCovAndDates = append(ssCovAndDates, &newRecord) } } - templData := filesCoverageToTemplateData(ssCovAndDates) + templData := FilesCoverageToTemplateData(ssCovAndDates) templData.Managers = managers FormatResult(templData, format) return stylesBodyJSTemplate(templData) diff --git a/pkg/cover/heatmap_test.go b/pkg/cover/heatmap_test.go index e4b490f23..42bcea4ec 100644 --- a/pkg/cover/heatmap_test.go +++ b/pkg/cover/heatmap_test.go @@ -150,7 +150,7 @@ func TestFilesCoverageToTemplateData(t *testing.T) { } for _, test := range tests { t.Run(test.name, func(t *testing.T) { - got := filesCoverageToTemplateData(test.input) + got := FilesCoverageToTemplateData(test.input) assert.EqualExportedValues(t, test.want, got) }) } |
