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  }