@@ -6,27 +6,24 @@ import (
66
77 "github.com/hashicorp/terraform-plugin-sdk/v2/helper/acctest"
88 "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
9- "github.com/hashicorp/terraform-plugin-sdk/v2/terraform"
109
11- gapi "github.com/grafana/grafana-api-golang-client"
12- "github.com/grafana/terraform-provider-grafana/internal/common"
13- "github.com/grafana/terraform-provider-grafana/internal/resources/grafana"
10+ "github.com/grafana/grafana-openapi-client-go/models"
1411 "github.com/grafana/terraform-provider-grafana/internal/testutils"
1512)
1613
1714func TestAccRole_basic (t * testing.T ) {
1815 testutils .CheckEnterpriseTestsEnabled (t )
1916
20- var role gapi. Role
17+ var role models. RoleDTO
2118
2219 resource .ParallelTest (t , resource.TestCase {
2320 ProviderFactories : testutils .ProviderFactories ,
24- CheckDestroy : testAccRoleCheckDestroy (& role ),
21+ CheckDestroy : roleCheckExists . destroyed (& role , nil ),
2522 Steps : []resource.TestStep {
2623 {
2724 Config : roleConfigBasic ,
2825 Check : resource .ComposeTestCheckFunc (
29- testAccRoleCheckExists ("grafana_role.test" , & role ),
26+ roleCheckExists . exists ("grafana_role.test" , & role ),
3027 resource .TestCheckResourceAttr ("grafana_role.test" , "name" , "terraform-acc-test" ),
3128 resource .TestCheckResourceAttr ("grafana_role.test" , "description" , "test desc" ),
3229 resource .TestCheckResourceAttr ("grafana_role.test" , "display_name" , "testdisplay" ),
@@ -40,7 +37,7 @@ func TestAccRole_basic(t *testing.T) {
4037 {
4138 Config : roleConfigWithPermissions ,
4239 Check : resource .ComposeTestCheckFunc (
43- testAccRoleCheckExists ("grafana_role.test" , & role ),
40+ roleCheckExists . exists ("grafana_role.test" , & role ),
4441 resource .TestCheckResourceAttr ("grafana_role.test" , "name" , "terraform-acc-test" ),
4542 resource .TestCheckResourceAttr ("grafana_role.test" , "description" , "test desc" ),
4643 resource .TestCheckResourceAttr ("grafana_role.test" , "display_name" , "testdisplay" ),
@@ -62,12 +59,12 @@ func TestAccRole_basic(t *testing.T) {
6259func TestAccRoleVersioning (t * testing.T ) {
6360 testutils .CheckEnterpriseTestsEnabled (t )
6461
65- var role gapi. Role
62+ var role models. RoleDTO
6663 name := acctest .RandomWithPrefix ("versioning-" )
6764
6865 resource .ParallelTest (t , resource.TestCase {
6966 ProviderFactories : testutils .ProviderFactories ,
70- CheckDestroy : testAccRoleCheckDestroy (& role ),
67+ CheckDestroy : roleCheckExists . destroyed (& role , nil ),
7168 Steps : []resource.TestStep {
7269 {
7370 Config : fmt .Sprintf (`
@@ -77,7 +74,7 @@ func TestAccRoleVersioning(t *testing.T) {
7774 auto_increment_version = true
7875 }` , name ),
7976 Check : resource .ComposeTestCheckFunc (
80- testAccRoleCheckExists ("grafana_role.test" , & role ),
77+ roleCheckExists . exists ("grafana_role.test" , & role ),
8178 resource .TestCheckResourceAttr ("grafana_role.test" , "name" , name ),
8279 resource .TestCheckResourceAttr ("grafana_role.test" , "version" , "1" ),
8380 ),
@@ -90,7 +87,7 @@ func TestAccRoleVersioning(t *testing.T) {
9087 version = 5
9188 }` , name ),
9289 Check : resource .ComposeTestCheckFunc (
93- testAccRoleCheckExists ("grafana_role.test" , & role ),
90+ roleCheckExists . exists ("grafana_role.test" , & role ),
9491 resource .TestCheckResourceAttr ("grafana_role.test" , "name" , name ),
9592 resource .TestCheckResourceAttr ("grafana_role.test" , "version" , "5" ),
9693 ),
@@ -103,7 +100,7 @@ func TestAccRoleVersioning(t *testing.T) {
103100 auto_increment_version = true
104101 }` , name ),
105102 Check : resource .ComposeTestCheckFunc (
106- testAccRoleCheckExists ("grafana_role.test" , & role ),
103+ roleCheckExists . exists ("grafana_role.test" , & role ),
107104 resource .TestCheckResourceAttr ("grafana_role.test" , "name" , name ),
108105 resource .TestCheckResourceAttr ("grafana_role.test" , "version" , "6" ),
109106 ),
@@ -116,7 +113,7 @@ func TestAccRoleVersioning(t *testing.T) {
116113 auto_increment_version = true
117114 }` , name ),
118115 Check : resource .ComposeTestCheckFunc (
119- testAccRoleCheckExists ("grafana_role.test" , & role ),
116+ roleCheckExists . exists ("grafana_role.test" , & role ),
120117 resource .TestCheckResourceAttr ("grafana_role.test" , "name" , name ),
121118 resource .TestCheckResourceAttr ("grafana_role.test" , "version" , "7" ),
122119 ),
@@ -125,50 +122,6 @@ func TestAccRoleVersioning(t *testing.T) {
125122 })
126123}
127124
128- func testAccRoleCheckExists (rn string , r * gapi.Role ) resource.TestCheckFunc {
129- return func (s * terraform.State ) error {
130- rs , ok := s .RootModule ().Resources [rn ]
131- if ! ok {
132- return fmt .Errorf ("resource not found: %s" , rn )
133- }
134-
135- if rs .Primary .ID == "" {
136- return fmt .Errorf ("resource id not set" )
137- }
138- orgID , roleUID := grafana .SplitOrgResourceID (rs .Primary .ID )
139- client := testutils .Provider .Meta ().(* common.Client ).GrafanaAPI
140-
141- // If the org ID is set, check that the report doesn't exist in the default org
142- if orgID > 1 {
143- role , err := client .GetRole (roleUID )
144- if err == nil || role != nil {
145- return fmt .Errorf ("expected no role with ID %s in default org but found one" , roleUID )
146- }
147- client = client .WithOrgID (orgID )
148- }
149-
150- role , err := client .GetRole (roleUID )
151- if err != nil {
152- return fmt .Errorf ("error getting role: %s" , err )
153- }
154-
155- * r = * role
156-
157- return nil
158- }
159- }
160-
161- func testAccRoleCheckDestroy (r * gapi.Role ) resource.TestCheckFunc {
162- return func (s * terraform.State ) error {
163- client := testutils .Provider .Meta ().(* common.Client ).GrafanaAPI
164- role , err := client .GetRole (r .UID )
165- if err == nil && role .Name != "" {
166- return fmt .Errorf ("role still exists" )
167- }
168- return nil
169- }
170- }
171-
172125const roleConfigBasic = `
173126resource "grafana_role" "test" {
174127 name = "terraform-acc-test"
0 commit comments