github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/identity/v2/user_test.go (about) 1 //go:build acceptance || identity 2 // +build acceptance identity 3 4 package v2 5 6 import ( 7 "testing" 8 9 "github.com/gophercloud/gophercloud/internal/acceptance/clients" 10 "github.com/gophercloud/gophercloud/internal/acceptance/tools" 11 "github.com/gophercloud/gophercloud/openstack/identity/v2/users" 12 th "github.com/gophercloud/gophercloud/testhelper" 13 ) 14 15 func TestUsersList(t *testing.T) { 16 clients.RequireIdentityV2(t) 17 clients.RequireAdmin(t) 18 19 client, err := clients.NewIdentityV2AdminClient() 20 th.AssertNoErr(t, err) 21 22 allPages, err := users.List(client).AllPages() 23 th.AssertNoErr(t, err) 24 25 allUsers, err := users.ExtractUsers(allPages) 26 th.AssertNoErr(t, err) 27 28 var found bool 29 for _, user := range allUsers { 30 tools.PrintResource(t, user) 31 32 if user.Name == "admin" { 33 found = true 34 } 35 } 36 37 th.AssertEquals(t, found, true) 38 } 39 40 func TestUsersCreateUpdateDelete(t *testing.T) { 41 clients.RequireIdentityV2(t) 42 clients.RequireAdmin(t) 43 44 client, err := clients.NewIdentityV2AdminClient() 45 th.AssertNoErr(t, err) 46 47 tenant, err := FindTenant(t, client) 48 th.AssertNoErr(t, err) 49 50 user, err := CreateUser(t, client, tenant) 51 th.AssertNoErr(t, err) 52 defer DeleteUser(t, client, user) 53 54 tools.PrintResource(t, user) 55 56 newUser, err := UpdateUser(t, client, user) 57 th.AssertNoErr(t, err) 58 59 tools.PrintResource(t, newUser) 60 }