...
1 package dsdssandboxes
2
3 import (
4 "testing"
5
6 "google.golang.org/api/cloudresourcemanager/v1"
7 "gotest.tools/v3/assert"
8 )
9
10 var (
11 testOwnerEmail = "user:owner@example.com"
12
13 testNonOwnerBinding = cloudresourcemanager.Binding{
14 Members: []string{
15 "user:test@examplecom",
16 },
17 Role: "roles/notanowner",
18 }
19
20 testOwnerBinding = cloudresourcemanager.Binding{
21 Members: []string{
22 testOwnerEmail,
23 },
24 Role: ownerRole,
25 }
26
27 testPolicy = cloudresourcemanager.Policy{
28 Bindings: []*cloudresourcemanager.Binding{
29 &testNonOwnerBinding,
30 &testOwnerBinding,
31 },
32 }
33 )
34
35 func TestGetProjectPolicy(t *testing.T) {
36 client := IamPolicyClient{
37 getIamPolicy: func(project string, _ *cloudresourcemanager.GetIamPolicyRequest) (*cloudresourcemanager.Policy, error) {
38 assert.Equal(t, testProjectName, project)
39 return &testPolicy, nil
40 },
41 }
42
43 result, err := client.GetProjectOwners(testProjectName)
44
45 assert.NilError(t, err)
46 assert.Equal(t, len(result), 1)
47 assert.Equal(t, (result)[0], testOwnerEmail)
48 }
49
View as plain text