@@ -154,31 +154,6 @@ func TestAccRabbitMQSecretBackendRole_topic(t *testing.T) {
154154 })
155155}
156156
157- func TestAccRabbitMQSecretBackendRole_vhostOrdering (t * testing.T ) {
158- backend := acctest .RandomWithPrefix ("tf-test-rabbitmq" )
159- name := acctest .RandomWithPrefix ("tf-test-rabbitmq" )
160- resourceName := "vault_rabbitmq_secret_backend_role.test"
161- connectionUri , username , password := testutil .GetTestRMQCreds (t )
162- resource .Test (t , resource.TestCase {
163- ProviderFactories : providerFactories ,
164- PreCheck : func () { testutil .TestAccPreCheck (t ) },
165- CheckDestroy : testAccRabbitMQSecretBackendRoleCheckDestroy ,
166- Steps : []resource.TestStep {
167- {
168- Config : testAccRabbitMQSecretBackendRoleConfig_multipleVhosts (name , backend , connectionUri , username , password ),
169- Check : resource .ComposeTestCheckFunc (
170- resource .TestCheckResourceAttr (resourceName , "name" , fmt .Sprintf ("%s" , name )),
171- resource .TestCheckResourceAttr (resourceName , "backend" , backend ),
172- resource .TestCheckResourceAttr (resourceName , "vhost.#" , "3" ),
173- resource .TestCheckResourceAttr (resourceName , "vhost.0.host" , "/alpha" ),
174- resource .TestCheckResourceAttr (resourceName , "vhost.1.host" , "/beta" ),
175- resource .TestCheckResourceAttr (resourceName , "vhost.2.host" , "/gamma" ),
176- ),
177- },
178- },
179- })
180- }
181-
182157func testAccRabbitMQSecretBackendRoleCheckDestroy (s * terraform.State ) error {
183158 for _ , rs := range s .RootModule ().Resources {
184159 if rs .Type != "vault_rabbitmq_secret_backend_role" {
@@ -312,43 +287,34 @@ resource "vault_rabbitmq_secret_backend_role" "test" {
312287` , path , connectionUri , username , password , name , testAccRabbitMQSecretBackendRoleTags_updated )
313288}
314289
315- func testAccRabbitMQSecretBackendRoleConfig_multipleVhosts (name , path , connectionUri , username , password string ) string {
316- return fmt .Sprintf (`
317- resource "vault_rabbitmq_secret_backend" "test" {
318- path = "%s"
319- description = "test description"
320- default_lease_ttl_seconds = 3600
321- max_lease_ttl_seconds = 86400
322- connection_uri = "%s"
323- username = "%s"
324- password = "%s"
325- }
326-
327- resource "vault_rabbitmq_secret_backend_role" "test" {
328- backend = vault_rabbitmq_secret_backend.test.path
329- name = "%s"
330- tags = "management"
331-
332- vhost {
333- host = "/alpha"
334- configure = ".*"
335- read = ".*"
336- write = ".*"
337- }
290+ func TestFlattenRabbitMQSecretBackendRoleVhost_Order (t * testing.T ) {
291+ input := map [string ]interface {}{
292+ "b-vhost" : map [string ]interface {}{
293+ "configure" : "c1" ,
294+ "read" : "r1" ,
295+ "write" : "w1" ,
296+ },
297+ "a-vhost" : map [string ]interface {}{
298+ "configure" : "c2" ,
299+ "read" : "r2" ,
300+ "write" : "w2" ,
301+ },
302+ "c-vhost" : map [string ]interface {}{
303+ "configure" : "c3" ,
304+ "read" : "r3" ,
305+ "write" : "w3" ,
306+ },
307+ }
338308
339- vhost {
340- host = "/beta"
341- configure = ".*"
342- read = ".*"
343- write = ".*"
344- }
309+ result := flattenRabbitMQSecretBackendRoleVhost (input )
345310
346- vhost {
347- host = "/gamma"
348- configure = ".*"
349- read = ".*"
350- write = ".*"
351- }
352- }
353- ` , path , connectionUri , username , password , name )
311+ expectedOrder := []string {"a-vhost" , "b-vhost" , "c-vhost" }
312+ if len (result ) != len (expectedOrder ) {
313+ t .Fatalf ("expected %d vhosts, got %d" , len (expectedOrder ), len (result ))
314+ }
315+ for i , expectedHost := range expectedOrder {
316+ if result [i ]["host" ] != expectedHost {
317+ t .Errorf ("expected host at index %d to be %q, got %q" , i , expectedHost , result [i ]["host" ])
318+ }
319+ }
354320}
0 commit comments