result_handler_test.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package alerting
  2. // func TestAlertResultHandler(t *testing.T) {
  3. // Convey("Test result Handler", t, func() {
  4. // resultHandler := ResultHandlerImpl{}
  5. // mockResult := &AlertResult{
  6. // State: alertstates.Ok,
  7. // AlertJob: &AlertJob{
  8. // Rule: &AlertRule{
  9. // Id: 1,
  10. // OrgId: 1,
  11. // },
  12. // },
  13. // }
  14. // mockAlertState := &m.AlertState{}
  15. // bus.ClearBusHandlers()
  16. // bus.AddHandler("test", func(query *m.GetLastAlertStateQuery) error {
  17. // query.Result = mockAlertState
  18. // return nil
  19. // })
  20. //
  21. // Convey("Should update", func() {
  22. //
  23. // Convey("when no earlier alert state", func() {
  24. // mockAlertState = nil
  25. // So(resultHandler.shouldUpdateState(mockResult), ShouldBeTrue)
  26. // })
  27. //
  28. // Convey("alert state have changed", func() {
  29. // mockAlertState = &m.AlertState{
  30. // State: alertstates.Critical,
  31. // }
  32. // mockResult.State = alertstates.Ok
  33. // So(resultHandler.shouldUpdateState(mockResult), ShouldBeTrue)
  34. // })
  35. //
  36. // Convey("last alert state was 15min ago", func() {
  37. // now := time.Now()
  38. // mockAlertState = &m.AlertState{
  39. // State: alertstates.Critical,
  40. // Created: now.Add(time.Minute * -30),
  41. // }
  42. // mockResult.State = alertstates.Critical
  43. // mockResult.StartTime = time.Now()
  44. // So(resultHandler.shouldUpdateState(mockResult), ShouldBeTrue)
  45. // })
  46. // })
  47. // })
  48. // }