github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/openstack/dns/v2/transfer/request/testing/requests_test.go (about)

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