Skip to content

Commit 66c9b05

Browse files
Config Generation: Add tests for listers (#1698)
Add a one-line helper that can be added to acceptance tests to check that the resource's lister works The concept is pretty simple: After running a test config, we can check that the resource we just applied is returned by the lister
1 parent 1e9621b commit 66c9b05

20 files changed

+87
-0
lines changed

internal/resources/grafana/resource_alerting_message_template_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ func TestAccMessageTemplate_basic(t *testing.T) {
2727
alertingMessageTemplateCheckExists.exists("grafana_message_template.my_template", &tmpl),
2828
resource.TestCheckResourceAttr("grafana_message_template.my_template", "name", "My Reusable Template"),
2929
resource.TestCheckResourceAttr("grafana_message_template.my_template", "template", "{{define \"My Reusable Template\" }}\n template content\n{{ end }}"),
30+
testutils.CheckLister("grafana_message_template.my_template"),
3031
),
3132
},
3233
// Test import.

internal/resources/grafana/resource_alerting_mute_timing_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ func TestAccMuteTiming_basic(t *testing.T) {
3737
resource.TestCheckResourceAttr("grafana_mute_timing.my_mute_timing", "intervals.0.years.0", "2030"),
3838
resource.TestCheckResourceAttr("grafana_mute_timing.my_mute_timing", "intervals.0.years.1", "2025:2026"),
3939
resource.TestCheckResourceAttr("grafana_mute_timing.my_mute_timing", "intervals.0.location", "America/New_York"),
40+
testutils.CheckLister("grafana_mute_timing.my_mute_timing"),
4041
),
4142
},
4243
// Test import.

internal/resources/grafana/resource_alerting_notification_policy_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ func TestAccNotificationPolicy_basic(t *testing.T) {
6565
resource.TestCheckResourceAttr("grafana_notification_policy.my_notification_policy", "policy.1.matcher.0.match", "=~"),
6666
resource.TestCheckResourceAttr("grafana_notification_policy.my_notification_policy", "policy.1.matcher.0.value", "another value.*"),
6767
resource.TestCheckResourceAttr("grafana_notification_policy.my_notification_policy", "policy.1.group_by.0", "..."),
68+
testutils.CheckLister("grafana_notification_policy.my_notification_policy"),
6869
),
6970
},
7071
// Test import.

internal/resources/grafana/resource_alerting_rule_group_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ func TestAccAlertRule_basic(t *testing.T) {
3434
resource.TestCheckResourceAttr("grafana_rule_group.my_alert_rule", "org_id", "1"),
3535
resource.TestCheckResourceAttr("grafana_rule_group.my_alert_rule", "rule.#", "1"),
3636
resource.TestCheckResourceAttr("grafana_rule_group.my_alert_rule", "rule.0.data.0.model", "{\"hide\":false,\"refId\":\"A\"}"),
37+
testutils.CheckLister("grafana_rule_group.my_alert_rule"),
3738
),
3839
},
3940
// Test "for: 0s"

internal/resources/grafana/resource_annotation_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func TestAccAnnotation_basic(t *testing.T) {
3131
Check: resource.ComposeTestCheckFunc(
3232
annotationsCheckExists.exists("grafana_annotation.test", &annotation),
3333
resource.TestCheckResourceAttr("grafana_annotation.test", "text", testAccAnnotationInitialText),
34+
testutils.CheckLister("grafana_annotation.test"),
3435
),
3536
},
3637
{

internal/resources/grafana/resource_dashboard_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ func TestAccDashboard_basic(t *testing.T) {
5151
resource.TestCheckResourceAttr(
5252
"grafana_dashboard.test", "config_json", expectedInitialConfig,
5353
),
54+
testutils.CheckLister("grafana_dashboard.test"),
5455
),
5556
},
5657
{
@@ -238,6 +239,7 @@ func TestAccDashboard_inOrg(t *testing.T) {
238239
checkResourceIsInOrg("grafana_dashboard.test", "grafana_organization.test"),
239240

240241
testAccDashboardCheckExistsInFolder(&dashboard, &folder),
242+
testutils.CheckLister("grafana_dashboard.test"),
241243
),
242244
},
243245
},

internal/resources/grafana/resource_data_source_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ func TestAccDataSource_Loki(t *testing.T) {
5959
resource.TestCheckResourceAttr("grafana_data_source.loki", "name", dsName),
6060
resource.TestCheckResourceAttr("grafana_data_source.loki", "type", "loki"),
6161
resource.TestCheckResourceAttr("grafana_data_source.loki", "url", "http://acc-test.invalid/"),
62+
testutils.CheckLister("grafana_data_source.loki"),
6263
func(s *terraform.State) error {
6364
jsonData := dataSource.JSONData.(map[string]interface{})
6465
if jsonData["derivedFields"] == nil {

internal/resources/grafana/resource_folder_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ func TestAccFolder_basic(t *testing.T) {
4646
resource.TestCheckResourceAttr("grafana_folder.test_folder_with_uid", "uid", "test-folder-uid"),
4747
resource.TestCheckResourceAttr("grafana_folder.test_folder_with_uid", "title", "Terraform Test Folder With UID"),
4848
resource.TestCheckResourceAttr("grafana_folder.test_folder_with_uid", "url", strings.TrimRight(os.Getenv("GRAFANA_URL"), "/")+"/dashboards/f/test-folder-uid/terraform-test-folder-with-uid"),
49+
testutils.CheckLister("grafana_folder.test_folder_with_uid"),
4950
),
5051
},
5152
{

internal/resources/grafana/resource_library_panel_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ func TestAccLibraryPanel_basic(t *testing.T) {
3232
resource.TestCheckResourceAttr("grafana_library_panel.test", "name", name),
3333
resource.TestCheckResourceAttr("grafana_library_panel.test", "version", "1"),
3434
resource.TestCheckResourceAttr("grafana_library_panel.test", "model_json", fmt.Sprintf(`{"description":"","title":"%s","type":""}`, name)),
35+
testutils.CheckLister("grafana_library_panel.test"),
3536
),
3637
},
3738
{

internal/resources/grafana/resource_playlist_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ func TestAccPlaylist_basic(t *testing.T) {
3939
"order": "2",
4040
"title": "Terraform Dashboard By ID",
4141
}),
42+
testutils.CheckLister(paylistResource),
4243
),
4344
},
4445
{

0 commit comments

Comments
 (0)