github.com/gophercloud/gophercloud@v1.11.0/openstack/dns/v2/transfer/request/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "testing" 5 6 transferRequests "github.com/gophercloud/gophercloud/openstack/dns/v2/transfer/request" 7 "github.com/gophercloud/gophercloud/pagination" 8 th "github.com/gophercloud/gophercloud/testhelper" 9 "github.com/gophercloud/gophercloud/testhelper/client" 10 ) 11 12 func TestList(t *testing.T) { 13 th.SetupHTTP() 14 defer th.TeardownHTTP() 15 HandleListSuccessfully(t) 16 17 count := 0 18 err := transferRequests.List(client.ServiceClient(), nil).EachPage( 19 func(page pagination.Page) (bool, error) { 20 count++ 21 actual, err := transferRequests.ExtractTransferRequests(page) 22 th.AssertNoErr(t, err) 23 th.CheckDeepEquals(t, ExpectedTransferRequestsSlice, actual) 24 return true, nil 25 }) 26 th.AssertNoErr(t, err) 27 th.CheckEquals(t, 1, count) 28 } 29 30 func TestListWithOpts(t *testing.T) { 31 th.SetupHTTP() 32 defer th.TeardownHTTP() 33 HandleListSuccessfully(t) 34 35 listOpts := transferRequests.ListOpts{ 36 Status: "ACTIVE", 37 } 38 39 allPages, err := transferRequests.List(client.ServiceClient(), listOpts).AllPages() 40 th.AssertNoErr(t, err) 41 allTransferRequests, err := transferRequests.ExtractTransferRequests(allPages) 42 th.AssertNoErr(t, err) 43 th.CheckEquals(t, 2, len(allTransferRequests)) 44 } 45 46 func TestListAllPages(t *testing.T) { 47 th.SetupHTTP() 48 defer th.TeardownHTTP() 49 HandleListSuccessfully(t) 50 51 allPages, err := transferRequests.List(client.ServiceClient(), nil).AllPages() 52 th.AssertNoErr(t, err) 53 allTransferRequests, err := transferRequests.ExtractTransferRequests(allPages) 54 th.AssertNoErr(t, err) 55 th.CheckEquals(t, 2, len(allTransferRequests)) 56 } 57 58 func TestGet(t *testing.T) { 59 th.SetupHTTP() 60 defer th.TeardownHTTP() 61 HandleGetSuccessfully(t) 62 63 actual, err := transferRequests.Get( 64 client.ServiceClient(), "a86dba58-0043-4cc6-a1bb-69d5e86f3ca3").Extract() 65 th.AssertNoErr(t, err) 66 th.CheckDeepEquals(t, &FirstTransferRequest, actual) 67 } 68 69 func TestCreate(t *testing.T) { 70 th.SetupHTTP() 71 defer th.TeardownHTTP() 72 HandleCreateSuccessfully(t) 73 74 createOpts := transferRequests.CreateOpts{ 75 TargetProjectID: "05d98711-b3a1-4264-a395-f46383671ee6", 76 Description: "This is a first example zone transfer request.", 77 } 78 79 actual, err := transferRequests.Create( 80 client.ServiceClient(), FirstTransferRequest.ZoneID, createOpts).Extract() 81 th.AssertNoErr(t, err) 82 th.CheckDeepEquals(t, &CreatedTransferRequest, actual) 83 } 84 85 func TestUpdate(t *testing.T) { 86 th.SetupHTTP() 87 defer th.TeardownHTTP() 88 HandleUpdateSuccessfully(t) 89 90 var description = "Updated Description" 91 updateOpts := transferRequests.UpdateOpts{ 92 Description: description, 93 } 94 95 UpdatedTransferRequest := CreatedTransferRequest 96 UpdatedTransferRequest.Description = "Updated Description" 97 98 actual, err := transferRequests.Update( 99 client.ServiceClient(), UpdatedTransferRequest.ID, updateOpts).Extract() 100 th.AssertNoErr(t, err) 101 th.CheckDeepEquals(t, &UpdatedTransferRequest, actual) 102 } 103 104 func TestDelete(t *testing.T) { 105 th.SetupHTTP() 106 defer th.TeardownHTTP() 107 HandleDeleteSuccessfully(t) 108 109 DeletedZone := CreatedTransferRequest 110 111 err := transferRequests.Delete(client.ServiceClient(), DeletedZone.ID).ExtractErr() 112 th.AssertNoErr(t, err) 113 }