Add API test for histogram
Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
This commit is contained in:
parent
a01b3d7a14
commit
f024d769e7
|
@ -30,6 +30,7 @@ import (
|
|||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/prometheus/prometheus/model/histogram"
|
||||
"github.com/prometheus/prometheus/util/stats"
|
||||
|
||||
"github.com/go-kit/log"
|
||||
|
@ -2798,13 +2799,39 @@ func TestRespond(t *testing.T) {
|
|||
Result: promql.Matrix{
|
||||
promql.Series{
|
||||
Points: []promql.Point{{V: 1, T: 1000}},
|
||||
// TODO(beorn7): Add histogram points.
|
||||
Metric: labels.FromStrings("__name__", "foo"),
|
||||
},
|
||||
},
|
||||
},
|
||||
expected: `{"status":"success","data":{"resultType":"matrix","result":[{"metric":{"__name__":"foo"},"values":[[1,"1"]]}]}}`,
|
||||
},
|
||||
{
|
||||
response: &queryData{
|
||||
ResultType: parser.ValueTypeMatrix,
|
||||
Result: promql.Matrix{
|
||||
promql.Series{
|
||||
Points: []promql.Point{{H: &histogram.FloatHistogram{
|
||||
Schema: 2,
|
||||
ZeroThreshold: 0.001,
|
||||
ZeroCount: 12,
|
||||
Count: 10,
|
||||
Sum: 20,
|
||||
PositiveSpans: []histogram.Span{
|
||||
{Offset: 3, Length: 2},
|
||||
{Offset: 1, Length: 3},
|
||||
},
|
||||
NegativeSpans: []histogram.Span{
|
||||
{Offset: 2, Length: 2},
|
||||
},
|
||||
PositiveBuckets: []float64{1, 2, 2, 1, 1},
|
||||
NegativeBuckets: []float64{2, 1},
|
||||
}, T: 1000}},
|
||||
Metric: labels.FromStrings("__name__", "foo"),
|
||||
},
|
||||
},
|
||||
},
|
||||
expected: `{"status":"success","data":{"resultType":"matrix","result":[{"metric":{"__name__":"foo"},"histograms":[[1,{"count":"10","sum":"20","buckets":[[1,"-1.6817928305074288","-1.414213562373095","1"],[1,"-1.414213562373095","-1.189207115002721","2"],[3,"-0.001","0.001","12"],[0,"1.414213562373095","1.6817928305074288","1"],[0,"1.6817928305074288","2","2"],[0,"2.378414230005442","2.82842712474619","2"],[0,"2.82842712474619","3.3635856610148576","1"],[0,"3.3635856610148576","4","1"]]}]]}]}}`,
|
||||
},
|
||||
{
|
||||
response: promql.Point{V: 0, T: 0},
|
||||
expected: `{"status":"success","data":[0,"0"]}`,
|
||||
|
|
Loading…
Reference in New Issue