package dsdssandboxes import ( "testing" "google.golang.org/api/cloudresourcemanager/v1" "gotest.tools/v3/assert" ) var ( testOwnerEmail = "user:owner@example.com" testNonOwnerBinding = cloudresourcemanager.Binding{ Members: []string{ "user:test@examplecom", }, Role: "roles/notanowner", } testOwnerBinding = cloudresourcemanager.Binding{ Members: []string{ testOwnerEmail, }, Role: ownerRole, } testPolicy = cloudresourcemanager.Policy{ Bindings: []*cloudresourcemanager.Binding{ &testNonOwnerBinding, &testOwnerBinding, }, } ) func TestGetProjectPolicy(t *testing.T) { client := IamPolicyClient{ getIamPolicy: func(project string, _ *cloudresourcemanager.GetIamPolicyRequest) (*cloudresourcemanager.Policy, error) { assert.Equal(t, testProjectName, project) return &testPolicy, nil }, } result, err := client.GetProjectOwners(testProjectName) assert.NilError(t, err) assert.Equal(t, len(result), 1) assert.Equal(t, (result)[0], testOwnerEmail) }