github.com/stakater/IngressMonitorController@v1.0.103/pkg/monitors/pingdom/pingdom-monitor_test.go (about) 1 package pingdom 2 3 import ( 4 log "github.com/sirupsen/logrus" 5 "testing" 6 7 "github.com/stakater/IngressMonitorController/pkg/config" 8 "github.com/stakater/IngressMonitorController/pkg/models" 9 "github.com/stakater/IngressMonitorController/pkg/util" 10 ) 11 12 func TestAddMonitorWithCorrectValues(t *testing.T) { 13 config := config.GetControllerConfig() 14 15 service := PingdomMonitorService{} 16 provider := util.GetProviderWithName(config, "Pingdom") 17 if provider == nil { 18 // TODO: Currently forcing to pass the test as we dont have Pingdom account to test 19 // Fail this case in future when have a valid Pingdom account 20 log.Error("Failed to find provider") 21 return 22 } 23 service.Setup(*provider) 24 m := models.Monitor{Name: "google-test", URL: "https://google1.com"} 25 service.Add(m) 26 27 mRes, err := service.GetByName("google-test") 28 29 if err != nil { 30 t.Error("Error: " + err.Error()) 31 } 32 if mRes.Name != m.Name || mRes.URL != m.URL { 33 t.Error("URL and name should be the same") 34 } 35 service.Remove(*mRes) 36 monitor, err := service.GetByName(mRes.Name) 37 38 if monitor != nil { 39 t.Error("Monitor should've been deleted ", monitor, err) 40 } 41 } 42 43 func TestUpdateMonitorWithCorrectValues(t *testing.T) { 44 config := config.GetControllerConfig() 45 46 service := PingdomMonitorService{} 47 48 provider := util.GetProviderWithName(config, "Pingdom") 49 if provider == nil { 50 // TODO: Currently forcing to pass the test as we dont have Pingdom account to test 51 // Fail this case in future when have a valid Pingdom account 52 log.Error("Failed to find provider") 53 return 54 } 55 service.Setup(*provider) 56 57 m := models.Monitor{Name: "google-test", URL: "https://google.com"} 58 service.Add(m) 59 60 mRes, err := service.GetByName("google-test") 61 62 if err != nil { 63 t.Error("Error: " + err.Error()) 64 } 65 if mRes.Name != m.Name || mRes.URL != m.URL { 66 t.Error("URL and name should be the same") 67 } 68 69 mRes.URL = "https://facebook.com" 70 71 service.Update(*mRes) 72 73 mRes, err = service.GetByName("google-test") 74 75 if err != nil { 76 t.Error("Error: " + err.Error()) 77 } 78 if mRes.URL != "https://facebook.com" { 79 t.Error("URL and name should be the same") 80 } 81 82 service.Remove(*mRes) 83 84 monitor, err := service.GetByName(mRes.Name) 85 86 if monitor != nil { 87 t.Error("Monitor should've been deleted ", monitor, err) 88 } 89 }