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 }