From 39ed5dfd3706364710a9563fc257ae225ee9baac Mon Sep 17 00:00:00 2001 From: Louay Alakkad Date: Mon, 27 Aug 2018 13:29:22 +0100 Subject: [PATCH] Add test for custom interval --- .../resource_uptimerobot_monitor_test.go | 95 ++++++++++++++++++- 1 file changed, 93 insertions(+), 2 deletions(-) diff --git a/uptimerobot/resource_uptimerobot_monitor_test.go b/uptimerobot/resource_uptimerobot_monitor_test.go index 0f76811..5917158 100644 --- a/uptimerobot/resource_uptimerobot_monitor_test.go +++ b/uptimerobot/resource_uptimerobot_monitor_test.go @@ -12,6 +12,38 @@ import ( ) func TestUptimeRobotDataResourceMonitor_http_monitor(t *testing.T) { + var FriendlyName = "TF Test: http monitor" + var Type = "http" + var URL = "https://google.com" + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckMonitorDestroy, + Steps: []resource.TestStep{ + resource.TestStep{ + Config: fmt.Sprintf(` + resource "uptimerobot_monitor" "test" { + friendly_name = "%s" + type = "%s" + url = "%s" + } + `, FriendlyName, Type, URL), + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "friendly_name", FriendlyName), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "type", Type), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "url", URL), + ), + }, + resource.TestStep{ + ResourceName: "uptimerobot_monitor.test", + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + +func TestUptimeRobotDataResourceMonitor_change_url(t *testing.T) { var FriendlyName = "TF Test: http monitor" var Type = "http" var URL = "https://google.com" @@ -23,7 +55,8 @@ func TestUptimeRobotDataResourceMonitor_http_monitor(t *testing.T) { Steps: []resource.TestStep{ resource.TestStep{ Config: fmt.Sprintf(` - resource "uptimerobot_monitor" "test" { friendly_name = "%s" + resource "uptimerobot_monitor" "test" { + friendly_name = "%s" type = "%s" url = "%s" } @@ -42,7 +75,8 @@ func TestUptimeRobotDataResourceMonitor_http_monitor(t *testing.T) { // Change url resource.TestStep{ Config: fmt.Sprintf(` - resource "uptimerobot_monitor" "test" { friendly_name = "%s" + resource "uptimerobot_monitor" "test" { + friendly_name = "%s" type = "%s" url = "%s" } @@ -94,6 +128,63 @@ func TestUptimeRobotDataResourceMonitor_ping_monitor(t *testing.T) { }) } +func TestUptimeRobotDataResourceMonitor_custom_interval(t *testing.T) { + var FriendlyName = "TF Test: ping monitor" + var Type = "ping" + var URL = "1.1.1.1" + var Interval = 300 + var Interval2 = 360 + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckMonitorDestroy, + Steps: []resource.TestStep{ + resource.TestStep{ + Config: fmt.Sprintf(` + resource "uptimerobot_monitor" "test" { + friendly_name = "%s" + type = "%s" + url = "%s" + interval = %d + } + `, FriendlyName, Type, URL, Interval), + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "friendly_name", FriendlyName), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "type", Type), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "url", URL), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "interval", fmt.Sprintf(`%d`, Interval)), + ), + }, + resource.TestStep{ + ResourceName: "uptimerobot_monitor.test", + ImportState: true, + ImportStateVerify: true, + }, + resource.TestStep{ + Config: fmt.Sprintf(` + resource "uptimerobot_monitor" "test" { + friendly_name = "%s" + type = "%s" + url = "%s" + interval = %d + } + `, FriendlyName, Type, URL, Interval2), + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "friendly_name", FriendlyName), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "type", Type), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "url", URL), + resource.TestCheckResourceAttr("uptimerobot_monitor.test", "interval", fmt.Sprintf(`%d`, Interval2)), + ), + }, + resource.TestStep{ + ResourceName: "uptimerobot_monitor.test", + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + func TestUptimeRobotDataResourceMonitor_http_auth_monitor(t *testing.T) { var FriendlyName = "TF Test: http auth monitor" var Type = "http"