53 lines
1.3 KiB
Go
53 lines
1.3 KiB
Go
package dashboard
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestFillTrendSeriesIncludesZeroDays(t *testing.T) {
|
|
now := time.Now().UTC()
|
|
end := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.UTC)
|
|
mid := end.AddDate(0, 0, -1).Format("2006-01-02")
|
|
|
|
counts := map[string]int64{mid: 3}
|
|
series := fillTrendSeries(3, counts)
|
|
|
|
if len(series) != 3 {
|
|
t.Fatalf("expected 3 points, got %d", len(series))
|
|
}
|
|
|
|
var foundMid bool
|
|
for _, point := range series {
|
|
if point.Date == mid && point.Count == 3 {
|
|
foundMid = true
|
|
}
|
|
}
|
|
|
|
if !foundMid {
|
|
t.Fatalf("expected middle day count 3, series=%+v", series)
|
|
}
|
|
|
|
if series[0].Count != 0 || series[2].Count != 0 {
|
|
t.Fatalf("expected zero-filled edge days, series=%+v", series)
|
|
}
|
|
}
|
|
|
|
func TestNormalizeTrendMetric(t *testing.T) {
|
|
if got := normalizeTrendMetric("PUBLISHED"); got != "published" {
|
|
t.Fatalf("expected published, got %q", got)
|
|
}
|
|
if got := normalizeTrendMetric(""); got != "created" {
|
|
t.Fatalf("expected created default, got %q", got)
|
|
}
|
|
}
|
|
|
|
func TestListLimitBounds(t *testing.T) {
|
|
if got := listLimit(0); got != defaultListLimit {
|
|
t.Fatalf("expected default %d, got %d", defaultListLimit, got)
|
|
}
|
|
if got := listLimit(99); got != maxListLimit {
|
|
t.Fatalf("expected max %d, got %d", maxListLimit, got)
|
|
}
|
|
}
|