|
|
|
@ -52,6 +52,24 @@ func TestSimpleReducer(t *testing.T) { |
|
|
|
|
So(result, ShouldEqual, float64(1)) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
Convey("median should ignore null values", func() { |
|
|
|
|
reducer := NewSimpleReducer("median") |
|
|
|
|
series := &tsdb.TimeSeries{ |
|
|
|
|
Name: "test time serie", |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
series.Points = append(series.Points, tsdb.NewTimePoint(null.FloatFromPtr(nil), 1)) |
|
|
|
|
series.Points = append(series.Points, tsdb.NewTimePoint(null.FloatFromPtr(nil), 2)) |
|
|
|
|
series.Points = append(series.Points, tsdb.NewTimePoint(null.FloatFromPtr(nil), 3)) |
|
|
|
|
series.Points = append(series.Points, tsdb.NewTimePoint(null.FloatFrom(float64(1)), 4)) |
|
|
|
|
series.Points = append(series.Points, tsdb.NewTimePoint(null.FloatFrom(float64(2)), 5)) |
|
|
|
|
series.Points = append(series.Points, tsdb.NewTimePoint(null.FloatFrom(float64(3)), 6)) |
|
|
|
|
|
|
|
|
|
result := reducer.Reduce(series) |
|
|
|
|
So(result.Valid, ShouldEqual, true) |
|
|
|
|
So(result.Float64, ShouldEqual, float64(2)) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
Convey("avg", func() { |
|
|
|
|
result := testReducer("avg", 1, 2, 3) |
|
|
|
|
So(result, ShouldEqual, float64(2)) |
|
|
|
|