github.com/gophercloud/gophercloud@v1.11.0/openstack/blockstorage/extensions/volumetransfers/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "testing" 5 6 "github.com/gophercloud/gophercloud/openstack/blockstorage/extensions/volumetransfers" 7 "github.com/gophercloud/gophercloud/pagination" 8 th "github.com/gophercloud/gophercloud/testhelper" 9 "github.com/gophercloud/gophercloud/testhelper/client" 10 ) 11 12 func TestCreateTransfer(t *testing.T) { 13 th.SetupHTTP() 14 defer th.TeardownHTTP() 15 HandleCreateTransfer(t) 16 17 actual, err := volumetransfers.Create(client.ServiceClient(), TransferRequest).Extract() 18 th.AssertNoErr(t, err) 19 th.CheckDeepEquals(t, TransferResponse, *actual) 20 } 21 22 func TestAcceptTransfer(t *testing.T) { 23 th.SetupHTTP() 24 defer th.TeardownHTTP() 25 HandleAcceptTransfer(t) 26 27 actual, err := volumetransfers.Accept(client.ServiceClient(), TransferResponse.ID, AcceptRequest).Extract() 28 th.AssertNoErr(t, err) 29 th.CheckDeepEquals(t, AcceptResponse, *actual) 30 } 31 32 func TestDeleteTransfer(t *testing.T) { 33 th.SetupHTTP() 34 defer th.TeardownHTTP() 35 HandleDeleteTransfer(t) 36 37 err := volumetransfers.Delete(client.ServiceClient(), TransferResponse.ID).ExtractErr() 38 th.AssertNoErr(t, err) 39 } 40 41 func TestListTransfers(t *testing.T) { 42 th.SetupHTTP() 43 defer th.TeardownHTTP() 44 HandleListTransfers(t) 45 46 expectedResponse := TransferListResponse 47 expectedResponse[0].AuthKey = "" 48 49 count := 0 50 err := volumetransfers.List(client.ServiceClient(), &volumetransfers.ListOpts{AllTenants: true}).EachPage(func(page pagination.Page) (bool, error) { 51 count++ 52 53 actual, err := volumetransfers.ExtractTransfers(page) 54 th.AssertNoErr(t, err) 55 56 th.CheckDeepEquals(t, expectedResponse, actual) 57 58 return true, nil 59 }) 60 th.AssertNoErr(t, err) 61 th.CheckEquals(t, count, 1) 62 } 63 64 func TestListTransfersAllPages(t *testing.T) { 65 th.SetupHTTP() 66 defer th.TeardownHTTP() 67 HandleListTransfers(t) 68 69 expectedResponse := TransferListResponse 70 expectedResponse[0].AuthKey = "" 71 72 allPages, err := volumetransfers.List(client.ServiceClient(), &volumetransfers.ListOpts{AllTenants: true}).AllPages() 73 th.AssertNoErr(t, err) 74 actual, err := volumetransfers.ExtractTransfers(allPages) 75 th.AssertNoErr(t, err) 76 th.CheckDeepEquals(t, expectedResponse, actual) 77 } 78 79 func TestGetTransfer(t *testing.T) { 80 th.SetupHTTP() 81 defer th.TeardownHTTP() 82 HandleGetTransfer(t) 83 84 expectedResponse := TransferResponse 85 expectedResponse.AuthKey = "" 86 87 actual, err := volumetransfers.Get(client.ServiceClient(), TransferResponse.ID).Extract() 88 th.AssertNoErr(t, err) 89 th.CheckDeepEquals(t, expectedResponse, *actual) 90 }