github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/openstack/networking/v2/extensions/quotas/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "context" 5 "fmt" 6 "net/http" 7 "testing" 8 9 "github.com/vnpaycloud-console/gophercloud/v2" 10 fake "github.com/vnpaycloud-console/gophercloud/v2/openstack/networking/v2/common" 11 "github.com/vnpaycloud-console/gophercloud/v2/openstack/networking/v2/extensions/quotas" 12 th "github.com/vnpaycloud-console/gophercloud/v2/testhelper" 13 ) 14 15 func TestGet(t *testing.T) { 16 th.SetupHTTP() 17 defer th.TeardownHTTP() 18 19 th.Mux.HandleFunc("/v2.0/quotas/0a73845280574ad389c292f6a74afa76", func(w http.ResponseWriter, r *http.Request) { 20 th.TestMethod(t, r, "GET") 21 th.TestHeader(t, r, "X-Auth-Token", fake.TokenID) 22 23 w.Header().Add("Content-Type", "application/json") 24 w.WriteHeader(http.StatusOK) 25 26 fmt.Fprint(w, GetResponseRaw) 27 }) 28 29 q, err := quotas.Get(context.TODO(), fake.ServiceClient(), "0a73845280574ad389c292f6a74afa76").Extract() 30 th.AssertNoErr(t, err) 31 th.AssertDeepEquals(t, q, &GetResponse) 32 } 33 34 func TestGetDetail(t *testing.T) { 35 th.SetupHTTP() 36 defer th.TeardownHTTP() 37 38 th.Mux.HandleFunc("/v2.0/quotas/0a73845280574ad389c292f6a74afa76/details.json", func(w http.ResponseWriter, r *http.Request) { 39 th.TestMethod(t, r, "GET") 40 th.TestHeader(t, r, "X-Auth-Token", fake.TokenID) 41 42 w.Header().Add("Content-Type", "application/json") 43 w.WriteHeader(http.StatusOK) 44 45 fmt.Fprint(w, GetDetailedResponseRaw) 46 }) 47 48 q, err := quotas.GetDetail(context.TODO(), fake.ServiceClient(), "0a73845280574ad389c292f6a74afa76").Extract() 49 th.AssertNoErr(t, err) 50 th.AssertDeepEquals(t, q, &GetDetailResponse) 51 } 52 53 func TestUpdate(t *testing.T) { 54 th.SetupHTTP() 55 defer th.TeardownHTTP() 56 57 th.Mux.HandleFunc("/v2.0/quotas/0a73845280574ad389c292f6a74afa76", func(w http.ResponseWriter, r *http.Request) { 58 th.TestMethod(t, r, "PUT") 59 th.TestHeader(t, r, "X-Auth-Token", fake.TokenID) 60 61 w.Header().Add("Content-Type", "application/json") 62 w.WriteHeader(http.StatusOK) 63 64 fmt.Fprint(w, UpdateRequestResponseRaw) 65 }) 66 67 q, err := quotas.Update(context.TODO(), fake.ServiceClient(), "0a73845280574ad389c292f6a74afa76", quotas.UpdateOpts{ 68 FloatingIP: gophercloud.IntToPointer(0), 69 Network: gophercloud.IntToPointer(-1), 70 Port: gophercloud.IntToPointer(5), 71 RBACPolicy: gophercloud.IntToPointer(10), 72 Router: gophercloud.IntToPointer(15), 73 SecurityGroup: gophercloud.IntToPointer(20), 74 SecurityGroupRule: gophercloud.IntToPointer(-1), 75 Subnet: gophercloud.IntToPointer(25), 76 SubnetPool: gophercloud.IntToPointer(0), 77 Trunk: gophercloud.IntToPointer(5), 78 }).Extract() 79 80 th.AssertNoErr(t, err) 81 th.AssertDeepEquals(t, q, &UpdateResponse) 82 }