github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/acceptance/openstack/dcaas/v2/direct_connect_test.go (about)

     1  package v2
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  	"strings"
     7  	"testing"
     8  
     9  	"github.com/opentelekomcloud/gophertelekomcloud/acceptance/clients"
    10  	"github.com/opentelekomcloud/gophertelekomcloud/acceptance/tools"
    11  	direct_connect "github.com/opentelekomcloud/gophertelekomcloud/openstack/dcaas/v2/direct-connect"
    12  	th "github.com/opentelekomcloud/gophertelekomcloud/testhelper"
    13  )
    14  
    15  func TestDirectConnectLifecycle(t *testing.T) {
    16  	if os.Getenv("RUN_DCAAS_DIRECT_CONNECT") == "" {
    17  		t.Skip("unstable test")
    18  	}
    19  
    20  	client, err := clients.NewDCaaSV2Client()
    21  	th.AssertNoErr(t, err)
    22  
    23  	// Create a direct connect
    24  	name := strings.ToLower(tools.RandomString("test-direct-connect", 5))
    25  	createOpts := direct_connect.CreateOpts{
    26  		Name:      name,
    27  		PortType:  "1G",
    28  		Bandwidth: 100,
    29  		Location:  "Biere",
    30  		Provider:  "OTC",
    31  	}
    32  
    33  	created, err := direct_connect.Create(client, createOpts)
    34  	th.AssertNoErr(t, err)
    35  
    36  	// Get a direct connect
    37  	get, err := direct_connect.Get(client, created.ID)
    38  	fmt.Println(get)
    39  	th.AssertNoErr(t, err)
    40  
    41  	// List direct connects
    42  	listed, err := direct_connect.List(client, created.ID)
    43  	fmt.Println(listed)
    44  
    45  	th.AssertNoErr(t, err)
    46  
    47  	// Update a direct connect
    48  	updateOpts := direct_connect.UpdateOpts{
    49  		Name:        tools.RandomString(name, 3),
    50  		Description: "Updated description",
    51  		Bandwidth:   200,
    52  	}
    53  
    54  	updated := direct_connect.Update(client, created.ID, updateOpts)
    55  	fmt.Println(updated)
    56  
    57  	// Cleanup
    58  	t.Cleanup(func() {
    59  		err = direct_connect.Delete(client, created.ID)
    60  		th.AssertNoErr(t, err)
    61  	})
    62  }