github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/acceptance/openstack/networking/v1/subnet_test.go (about)

     1  package v1
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/opentelekomcloud/gophertelekomcloud/acceptance/clients"
     7  	"github.com/opentelekomcloud/gophertelekomcloud/acceptance/tools"
     8  	"github.com/opentelekomcloud/gophertelekomcloud/openstack/common/pointerto"
     9  	"github.com/opentelekomcloud/gophertelekomcloud/openstack/networking/v1/subnets"
    10  	th "github.com/opentelekomcloud/gophertelekomcloud/testhelper"
    11  )
    12  
    13  func TestSubnetList(t *testing.T) {
    14  	client, err := clients.NewNetworkV1Client()
    15  	th.AssertNoErr(t, err)
    16  
    17  	vpc := createVpc(t, client)
    18  	defer deleteVpc(t, client, vpc.ID)
    19  
    20  	subnet := createSubnet(t, client, vpc.ID)
    21  	defer deleteSubnet(t, client, subnet.VpcID, subnet.ID)
    22  
    23  	listOpts := subnets.ListOpts{
    24  		VpcID: vpc.ID,
    25  	}
    26  
    27  	filteredSubnets, err := subnets.List(client, listOpts)
    28  	th.AssertNoErr(t, err)
    29  	th.AssertEquals(t, 1, len(filteredSubnets))
    30  	th.AssertEquals(t, vpc.ID, filteredSubnets[0].VpcID)
    31  }
    32  
    33  func TestSubnetsLifecycle(t *testing.T) {
    34  	client, err := clients.NewNetworkV1Client()
    35  	th.AssertNoErr(t, err)
    36  
    37  	vpc := createVpc(t, client)
    38  	defer deleteVpc(t, client, vpc.ID)
    39  
    40  	subnet := createSubnet(t, client, vpc.ID)
    41  	defer deleteSubnet(t, client, subnet.VpcID, subnet.ID)
    42  
    43  	tools.PrintResource(t, subnet)
    44  
    45  	// Update a subnet
    46  	emptyDescription := ""
    47  	updateOpts := &subnets.UpdateOpts{
    48  		Name:        tools.RandomString("acc-subnet-", 3),
    49  		Description: &emptyDescription,
    50  		EnableIpv6:  pointerto.Bool(true),
    51  	}
    52  	t.Logf("Attempting to update name of subnet to %s", updateOpts.Name)
    53  	_, err = subnets.Update(client, subnet.VpcID, subnet.ID, updateOpts).Extract()
    54  	th.AssertNoErr(t, err)
    55  
    56  	// Query a subnet
    57  	newSubnet, err := subnets.Get(client, subnet.ID).Extract()
    58  	th.AssertNoErr(t, err)
    59  	th.AssertEquals(t, updateOpts.Name, newSubnet.Name)
    60  	th.AssertEquals(t, emptyDescription, newSubnet.Description)
    61  	th.AssertEquals(t, true, newSubnet.EnableIpv6)
    62  }