| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- package alerting
- // func TestAlertNotificationExtraction(t *testing.T) {
- // Convey("Notifier tests", t, func() {
- // Convey("rules for sending notifications", func() {
- // dummieNotifier := NotifierImpl{}
- //
- // result := &AlertResult{
- // State: alertstates.Critical,
- // }
- //
- // notifier := &Notification{
- // Name: "Test Notifier",
- // Type: "TestType",
- // SendCritical: true,
- // SendWarning: true,
- // }
- //
- // Convey("Should send notification", func() {
- // So(dummieNotifier.ShouldDispath(result, notifier), ShouldBeTrue)
- // })
- //
- // Convey("warn:false and state:warn should not send", func() {
- // result.State = alertstates.Warn
- // notifier.SendWarning = false
- // So(dummieNotifier.ShouldDispath(result, notifier), ShouldBeFalse)
- // })
- // })
- //
- // Convey("Parsing alert notification from settings", func() {
- // Convey("Parsing email", func() {
- // Convey("empty settings should return error", func() {
- // json := `{ }`
- //
- // settingsJSON, _ := simplejson.NewJson([]byte(json))
- // model := &m.AlertNotification{
- // Name: "ops",
- // Type: "email",
- // Settings: settingsJSON,
- // }
- //
- // _, err := NewNotificationFromDBModel(model)
- // So(err, ShouldNotBeNil)
- // })
- //
- // Convey("from settings", func() {
- // json := `
- // {
- // "to": "ops@grafana.org"
- // }`
- //
- // settingsJSON, _ := simplejson.NewJson([]byte(json))
- // model := &m.AlertNotification{
- // Name: "ops",
- // Type: "email",
- // Settings: settingsJSON,
- // }
- //
- // not, err := NewNotificationFromDBModel(model)
- //
- // So(err, ShouldBeNil)
- // So(not.Name, ShouldEqual, "ops")
- // So(not.Type, ShouldEqual, "email")
- // So(reflect.TypeOf(not.Notifierr).Elem().String(), ShouldEqual, "alerting.EmailNotifier")
- //
- // email := not.Notifierr.(*EmailNotifier)
- // So(email.To, ShouldEqual, "ops@grafana.org")
- // })
- // })
- //
- // Convey("Parsing webhook", func() {
- // Convey("empty settings should return error", func() {
- // json := `{ }`
- //
- // settingsJSON, _ := simplejson.NewJson([]byte(json))
- // model := &m.AlertNotification{
- // Name: "ops",
- // Type: "webhook",
- // Settings: settingsJSON,
- // }
- //
- // _, err := NewNotificationFromDBModel(model)
- // So(err, ShouldNotBeNil)
- // })
- //
- // Convey("from settings", func() {
- // json := `
- // {
- // "url": "http://localhost:3000",
- // "username": "username",
- // "password": "password"
- // }`
- //
- // settingsJSON, _ := simplejson.NewJson([]byte(json))
- // model := &m.AlertNotification{
- // Name: "slack",
- // Type: "webhook",
- // Settings: settingsJSON,
- // }
- //
- // not, err := NewNotificationFromDBModel(model)
- //
- // So(err, ShouldBeNil)
- // So(not.Name, ShouldEqual, "slack")
- // So(not.Type, ShouldEqual, "webhook")
- // So(reflect.TypeOf(not.Notifierr).Elem().String(), ShouldEqual, "alerting.WebhookNotifier")
- //
- // webhook := not.Notifierr.(*WebhookNotifier)
- // So(webhook.Url, ShouldEqual, "http://localhost:3000")
- // })
- // })
- // })
- // })
- // }
|