package metrics import ( "regexp" "testing" ) func TestShouldPing(t *testing.T) { cfg := MetricConfig{ Enabled: true, Url: "", BotUserAgents: &[]regexp.Regexp{ *regexp.MustCompile("random-bot/.*"), }, } if cfg.ShouldSendMetrics("/index.html", "random-bot/v23.5", "", "") { t.Fatalf("Accepted bot user-agent") } if !cfg.ShouldSendMetrics("/index.html", "Firefox/...", "", "") { t.Fatalf("Rejected real user-agent") } if cfg.ShouldSendMetrics("/index.html", "Firefox/...", "1", "") { t.Fatalf("Ignored DNT") } if cfg.ShouldSendMetrics("/index.html", "Firefox/...", "", "1") { t.Fatalf("Ignored GPC") } }