github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/openstack/identity/v3/ec2credentials/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/vnpaycloud-console/gophercloud/v2/openstack/identity/v3/ec2credentials" 8 "github.com/vnpaycloud-console/gophercloud/v2/pagination" 9 th "github.com/vnpaycloud-console/gophercloud/v2/testhelper" 10 "github.com/vnpaycloud-console/gophercloud/v2/testhelper/client" 11 ) 12 13 func TestListEC2Credentials(t *testing.T) { 14 th.SetupHTTP() 15 defer th.TeardownHTTP() 16 HandleListEC2CredentialsSuccessfully(t) 17 18 count := 0 19 err := ec2credentials.List(client.ServiceClient(), userID).EachPage(context.TODO(), func(_ context.Context, page pagination.Page) (bool, error) { 20 count++ 21 22 actual, err := ec2credentials.ExtractCredentials(page) 23 th.AssertNoErr(t, err) 24 25 th.CheckDeepEquals(t, ExpectedEC2CredentialsSlice, actual) 26 27 return true, nil 28 }) 29 th.AssertNoErr(t, err) 30 th.CheckEquals(t, count, 1) 31 } 32 33 func TestListEC2CredentialsAllPages(t *testing.T) { 34 th.SetupHTTP() 35 defer th.TeardownHTTP() 36 HandleListEC2CredentialsSuccessfully(t) 37 38 allPages, err := ec2credentials.List(client.ServiceClient(), userID).AllPages(context.TODO()) 39 th.AssertNoErr(t, err) 40 actual, err := ec2credentials.ExtractCredentials(allPages) 41 th.AssertNoErr(t, err) 42 th.CheckDeepEquals(t, ExpectedEC2CredentialsSlice, actual) 43 } 44 45 func TestGetEC2Credential(t *testing.T) { 46 th.SetupHTTP() 47 defer th.TeardownHTTP() 48 HandleGetEC2CredentialSuccessfully(t) 49 50 actual, err := ec2credentials.Get(context.TODO(), client.ServiceClient(), userID, credentialID).Extract() 51 th.AssertNoErr(t, err) 52 th.CheckDeepEquals(t, EC2Credential, *actual) 53 } 54 55 func TestCreateEC2Credential(t *testing.T) { 56 th.SetupHTTP() 57 defer th.TeardownHTTP() 58 HandleCreateEC2CredentialSuccessfully(t) 59 60 createOpts := ec2credentials.CreateOpts{ 61 TenantID: "6238dee2fec940a6bf31e49e9faf995a", 62 } 63 64 actual, err := ec2credentials.Create(context.TODO(), client.ServiceClient(), userID, createOpts).Extract() 65 th.AssertNoErr(t, err) 66 th.CheckDeepEquals(t, EC2Credential, *actual) 67 } 68 69 func TestDeleteEC2Credential(t *testing.T) { 70 th.SetupHTTP() 71 defer th.TeardownHTTP() 72 HandleDeleteEC2CredentialSuccessfully(t) 73 74 res := ec2credentials.Delete(context.TODO(), client.ServiceClient(), userID, credentialID) 75 th.AssertNoErr(t, res.Err) 76 }