From 04436c8a52dec8e3c258700c9b847b29f2154dde Mon Sep 17 00:00:00 2001 From: bergquist Date: Mon, 13 Jun 2016 13:45:26 +0200 Subject: [PATCH] test(alerting): make sure the worst state is captured --- pkg/services/alerting/executor_test.go | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/pkg/services/alerting/executor_test.go b/pkg/services/alerting/executor_test.go index fbee38aab53..5f4c7adc9aa 100644 --- a/pkg/services/alerting/executor_test.go +++ b/pkg/services/alerting/executor_test.go @@ -91,7 +91,7 @@ func TestAlertingExecutor(t *testing.T) { } timeSeries := []*tsdb.TimeSeries{ - tsdb.NewTimeSeries("test1", [][2]float64{{1, 0}, {11, 0}}), + tsdb.NewTimeSeries("test1", [][2]float64{{6, 0}, {11, 0}}), } result := executor.evaluateRule(rule, timeSeries) @@ -130,6 +130,22 @@ func TestAlertingExecutor(t *testing.T) { result := executor.evaluateRule(rule, timeSeries) So(result.State, ShouldEqual, alertstates.Critical) }) + + Convey("first serie is warn, second is critical", func() { + rule := &AlertRule{ + Critical: Level{Level: 10, Operator: ">"}, + Warning: Level{Level: 5, Operator: ">"}, + Transformer: transformers.NewAggregationTransformer("avg"), + } + + timeSeries := []*tsdb.TimeSeries{ + tsdb.NewTimeSeries("test1", [][2]float64{{6, 0}}), + tsdb.NewTimeSeries("test1", [][2]float64{{11, 0}}), + } + + result := executor.evaluateRule(rule, timeSeries) + So(result.State, ShouldEqual, alertstates.Critical) + }) }) }) }