github.com/gophercloud/gophercloud@v1.11.0/openstack/identity/v3/registeredlimits/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "testing" 5 6 "github.com/gophercloud/gophercloud/openstack/identity/v3/registeredlimits" 7 "github.com/gophercloud/gophercloud/pagination" 8 th "github.com/gophercloud/gophercloud/testhelper" 9 "github.com/gophercloud/gophercloud/testhelper/client" 10 ) 11 12 func TestListRegisteredLimits(t *testing.T) { 13 th.SetupHTTP() 14 defer th.TeardownHTTP() 15 HandleListRegisteredLimitsSuccessfully(t) 16 17 count := 0 18 err := registeredlimits.List(client.ServiceClient(), nil).EachPage(func(page pagination.Page) (bool, error) { 19 count++ 20 21 actual, err := registeredlimits.ExtractRegisteredLimits(page) 22 th.AssertNoErr(t, err) 23 24 th.CheckDeepEquals(t, ExpectedRegisteredLimitsSlice, actual) 25 26 return true, nil 27 }) 28 th.AssertNoErr(t, err) 29 th.CheckEquals(t, count, 1) 30 } 31 32 func TestListRegisteredLimitsAllPages(t *testing.T) { 33 th.SetupHTTP() 34 defer th.TeardownHTTP() 35 HandleListRegisteredLimitsSuccessfully(t) 36 37 allPages, err := registeredlimits.List(client.ServiceClient(), nil).AllPages() 38 th.AssertNoErr(t, err) 39 actual, err := registeredlimits.ExtractRegisteredLimits(allPages) 40 th.AssertNoErr(t, err) 41 th.CheckDeepEquals(t, ExpectedRegisteredLimitsSlice, actual) 42 } 43 44 func TestCreateRegisteredLimits(t *testing.T) { 45 th.SetupHTTP() 46 defer th.TeardownHTTP() 47 HandleCreateRegisteredLimitSuccessfully(t) 48 49 createOpts := registeredlimits.BatchCreateOpts{ 50 registeredlimits.CreateOpts{ 51 ServiceID: "9408080f1970482aa0e38bc2d4ea34b7", 52 RegionID: "RegionOne", 53 ResourceName: "snapshot", 54 DefaultLimit: 5, 55 }, 56 registeredlimits.CreateOpts{ 57 ServiceID: "9408080f1970482aa0e38bc2d4ea34b7", 58 RegionID: "RegionOne", 59 ResourceName: "volume", 60 DefaultLimit: 11, 61 Description: "Number of volumes for service 9408080f1970482aa0e38bc2d4ea34b7", 62 }, 63 } 64 65 actual, err := registeredlimits.BatchCreate(client.ServiceClient(), createOpts).Extract() 66 th.AssertNoErr(t, err) 67 th.CheckDeepEquals(t, ExpectedRegisteredLimitsSlice, actual) 68 } 69 70 func TestGetRegisteredLimit(t *testing.T) { 71 th.SetupHTTP() 72 defer th.TeardownHTTP() 73 HandleGetRegisteredLimitSuccessfully(t) 74 75 actual, err := registeredlimits.Get(client.ServiceClient(), "3229b3849f584faea483d6851f7aab05").Extract() 76 th.AssertNoErr(t, err) 77 th.CheckDeepEquals(t, SecondRegisteredLimit, *actual) 78 } 79 80 func TestDeleteRegisteredLimit(t *testing.T) { 81 th.SetupHTTP() 82 defer th.TeardownHTTP() 83 HandleDeleteRegisteredLimitSuccessfully(t) 84 85 res := registeredlimits.Delete(client.ServiceClient(), "3229b3849f584faea483d6851f7aab05") 86 th.AssertNoErr(t, res.Err) 87 } 88 89 func TestUpdateRegisteredLimit(t *testing.T) { 90 th.SetupHTTP() 91 defer th.TeardownHTTP() 92 HandleUpdateRegisteredLimitSuccessfully(t) 93 94 defaultLimit := 15 95 updateOpts := registeredlimits.UpdateOpts{ 96 ServiceID: "9408080f1970482aa0e38bc2d4ea34b7", 97 ResourceName: "volumes", 98 DefaultLimit: &defaultLimit, 99 } 100 101 actual, err := registeredlimits.Update(client.ServiceClient(), "3229b3849f584faea483d6851f7aab05", updateOpts).Extract() 102 th.AssertNoErr(t, err) 103 th.CheckDeepEquals(t, UpdatedSecondRegisteredLimit, *actual) 104 }