123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package pcp
- import (
- "testing"
- "github.com/performancecopilot/speed"
- "github.com/go-kit/kit/metrics/teststat"
- )
- func TestCounter(t *testing.T) {
- r, err := NewReporter("test_counter")
- if err != nil {
- t.Fatal(err)
- }
- counter, err := r.NewCounter("speed_counter")
- if err != nil {
- t.Fatal(err)
- }
- counter = counter.With("label values", "not supported").(*Counter)
- value := func() float64 { f := counter.c.Val(); return float64(f) }
- if err := teststat.TestCounter(counter, value); err != nil {
- t.Fatal(err)
- }
- }
- func TestGauge(t *testing.T) {
- r, err := NewReporter("test_gauge")
- if err != nil {
- t.Fatal(err)
- }
- gauge, err := r.NewGauge("speed_gauge")
- if err != nil {
- t.Fatal(err)
- }
- gauge = gauge.With("label values", "not supported").(*Gauge)
- value := func() float64 { f := gauge.g.Val(); return f }
- if err := teststat.TestGauge(gauge, value); err != nil {
- t.Fatal(err)
- }
- }
- func TestHistogram(t *testing.T) {
- r, err := NewReporter("test_histogram")
- if err != nil {
- t.Fatal(err)
- }
- histogram, err := r.NewHistogram("speed_histogram", 0, 3600000000, speed.OneUnit)
- if err != nil {
- t.Fatal(err)
- }
- histogram = histogram.With("label values", "not supported").(*Histogram)
- quantiles := func() (float64, float64, float64, float64) {
- p50 := float64(histogram.Percentile(50))
- p90 := float64(histogram.Percentile(90))
- p95 := float64(histogram.Percentile(95))
- p99 := float64(histogram.Percentile(99))
- return p50, p90, p95, p99
- }
- if err := teststat.TestHistogram(histogram, quantiles, 0.01); err != nil {
- t.Fatal(err)
- }
- }
|