Skip to content

Commit 4a31c89

Browse files
committed
add a test for user group memberships
1 parent 546d1c4 commit 4a31c89

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
// Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
2+
3+
package main
4+
5+
import (
6+
"testing"
7+
8+
"github.com/hashicorp/terraform/helper/resource"
9+
"github.com/hashicorp/terraform/helper/schema"
10+
"github.com/hashicorp/terraform/terraform"
11+
"github.com/stretchr/testify/suite"
12+
)
13+
14+
type ResourceIdentityUserGroupMembershipTestSuite struct {
15+
suite.Suite
16+
Client mockableClient
17+
Config string
18+
Provider terraform.ResourceProvider
19+
Providers map[string]terraform.ResourceProvider
20+
ResourceName string
21+
}
22+
23+
func (s *ResourceIdentityUserGroupMembershipTestSuite) SetupTest() {
24+
s.Client = GetTestProvider()
25+
s.Provider = Provider(func(d *schema.ResourceData) (interface{}, error) {
26+
return s.Client, nil
27+
})
28+
29+
s.Providers = map[string]terraform.ResourceProvider{
30+
"baremetal": s.Provider,
31+
}
32+
33+
s.Config = `
34+
resource "baremetal_identity_user" "u" {
35+
name = "user_name"
36+
description = "user desc"
37+
}
38+
resource "baremetal_identity_group" "g" {
39+
name = "group_name"
40+
description = "group desc"
41+
}
42+
resource "baremetal_identity_user_group_membership" "ug_membership" {
43+
compartment_id = "${var.tenancy_ocid}"
44+
user_id = "${baremetal_identity_user.u.id}"
45+
group_id = "${baremetal_identity_group.g.id}"
46+
}
47+
`
48+
s.Config += testProviderConfig()
49+
s.ResourceName = "baremetal_identity_user_group_membership.ug_membership"
50+
}
51+
52+
func (s *ResourceIdentityUserGroupMembershipTestSuite) TestGetUserGroupMembershipsByGroup() {
53+
resource.UnitTest(s.T(), resource.TestCase{
54+
PreventPostDestroyRefresh: true,
55+
Providers: s.Providers,
56+
Steps: []resource.TestStep{
57+
{
58+
ImportState: true,
59+
ImportStateVerify: true,
60+
Config: s.Config,
61+
Check: resource.ComposeTestCheckFunc(
62+
resource.TestCheckResourceAttrSet(s.ResourceName, "id"),
63+
),
64+
},
65+
{
66+
Config: s.Config,
67+
Check: resource.ComposeTestCheckFunc(
68+
resource.TestCheckResourceAttrSet("baremetal_identity_user_group_membership.ug_membership", "user_id"),
69+
),
70+
},
71+
},
72+
},
73+
)
74+
}
75+
76+
func TestResourceIdentityUserGroupMembershipTestSuite(t *testing.T) {
77+
suite.Run(t, new(ResourceIdentityUserGroupMembershipTestSuite))
78+
}

0 commit comments

Comments
 (0)