@@ -100,6 +100,18 @@ func TestAverageSeries(t *testing.T) {
100100 []* types.MetricData {types .MakeMetricData ("lastSeries(metric[123])" ,
101101 []float64 {3 , math .NaN (), 4 , 5 , 6 , 6 }, 1 , now32 )},
102102 },
103+ {
104+ `aggregate(metric[123], "current")` ,
105+ map [parser.MetricRequest ][]* types.MetricData {
106+ {"metric[123]" , 0 , 1 }: {
107+ types .MakeMetricData ("metric1" , []float64 {1 , math .NaN (), 2 , 3 , 4 , 5 }, 1 , now32 ),
108+ types .MakeMetricData ("metric2" , []float64 {2 , math .NaN (), 3 , math .NaN (), 5 , 6 }, 1 , now32 ),
109+ types .MakeMetricData ("metric3" , []float64 {3 , math .NaN (), 4 , 5 , 6 , math .NaN ()}, 1 , now32 ),
110+ },
111+ },
112+ []* types.MetricData {types .MakeMetricData ("currentSeries(metric[123])" ,
113+ []float64 {3 , math .NaN (), 4 , 5 , 6 , 6 }, 1 , now32 )},
114+ },
103115 {
104116 `aggregate(metric[123], "max")` ,
105117 map [parser.MetricRequest ][]* types.MetricData {
@@ -160,6 +172,18 @@ func TestAverageSeries(t *testing.T) {
160172 []* types.MetricData {types .MakeMetricData ("rangeSeries(metric[123])" ,
161173 []float64 {2 , math .NaN (), 2 , 2 , 2 , 1 }, 1 , now32 )},
162174 },
175+ {
176+ `aggregate(metric[123], "rangeOf")` ,
177+ map [parser.MetricRequest ][]* types.MetricData {
178+ {"metric[123]" , 0 , 1 }: {
179+ types .MakeMetricData ("metric1" , []float64 {1 , math .NaN (), 2 , 3 , 4 , 6 }, 1 , now32 ),
180+ types .MakeMetricData ("metric2" , []float64 {2 , math .NaN (), 3 , math .NaN (), 5 , 5 }, 1 , now32 ),
181+ types .MakeMetricData ("metric3" , []float64 {3 , math .NaN (), 4 , 5 , 6 , math .NaN ()}, 1 , now32 ),
182+ },
183+ },
184+ []* types.MetricData {types .MakeMetricData ("rangeOfSeries(metric[123])" ,
185+ []float64 {2 , math .NaN (), 2 , 2 , 2 , 1 }, 1 , now32 )},
186+ },
163187 {
164188 `aggregate(metric[123], "sum")` ,
165189 map [parser.MetricRequest ][]* types.MetricData {
@@ -172,6 +196,18 @@ func TestAverageSeries(t *testing.T) {
172196 []* types.MetricData {types .MakeMetricData ("sumSeries(metric[123])" ,
173197 []float64 {6 , math .NaN (), 9 , 8 , 15 , 11 }, 1 , now32 )},
174198 },
199+ {
200+ `aggregate(metric[123], "total")` ,
201+ map [parser.MetricRequest ][]* types.MetricData {
202+ {"metric[123]" , 0 , 1 }: {
203+ types .MakeMetricData ("metric1" , []float64 {1 , math .NaN (), 2 , 3 , 4 , 6 }, 1 , now32 ),
204+ types .MakeMetricData ("metric2" , []float64 {2 , math .NaN (), 3 , math .NaN (), 5 , 5 }, 1 , now32 ),
205+ types .MakeMetricData ("metric3" , []float64 {3 , math .NaN (), 4 , 5 , 6 , math .NaN ()}, 1 , now32 ),
206+ },
207+ },
208+ []* types.MetricData {types .MakeMetricData ("totalSeries(metric[123])" ,
209+ []float64 {6 , math .NaN (), 9 , 8 , 15 , 11 }, 1 , now32 )},
210+ },
175211 {
176212 `stddevSeries(metric[123])` ,
177213 map [parser.MetricRequest ][]* types.MetricData {
0 commit comments