github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/acceptance/openstack/networking/v1/eips_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/tags" 9 "github.com/opentelekomcloud/gophertelekomcloud/openstack/networking/v1/eips" 10 th "github.com/opentelekomcloud/gophertelekomcloud/testhelper" 11 ) 12 13 func TestEipList(t *testing.T) { 14 client, err := clients.NewNetworkV1Client() 15 th.AssertNoErr(t, err) 16 17 elasticIP := CreateEip(t, client, 100) 18 listOpts := eips.ListOpts{ 19 BandwidthID: elasticIP.BandwidthID, 20 } 21 t.Cleanup(func() { 22 DeleteEip(t, client, elasticIP.ID) 23 24 elasticIPs, err := eips.List(client, listOpts) 25 th.AssertNoErr(t, err) 26 th.AssertEquals(t, 0, len(elasticIPs)) 27 }) 28 29 elasticIPs, err := eips.List(client, listOpts) 30 th.AssertNoErr(t, err) 31 th.AssertEquals(t, 1, len(elasticIPs)) 32 th.AssertEquals(t, elasticIP.ID, elasticIPs[0].ID) 33 th.AssertEquals(t, elasticIP.PublicAddress, elasticIPs[0].PublicAddress) 34 } 35 36 func TestEipLifecycle(t *testing.T) { 37 client, err := clients.NewNetworkV1Client() 38 th.AssertNoErr(t, err) 39 40 eip := CreateEip(t, client, 100) 41 t.Cleanup(func() { DeleteEip(t, client, eip.ID) }) 42 43 tools.PrintResource(t, eip) 44 } 45 46 func TestEipTagsLifecycle(t *testing.T) { 47 client, err := clients.NewNetworkV1Client() 48 th.AssertNoErr(t, err) 49 50 eip := CreateEip(t, client, 100) 51 t.Cleanup(func() { DeleteEip(t, client, eip.ID) }) 52 53 networkV2Client, err := clients.NewNetworkV2Client() 54 th.AssertNoErr(t, err) 55 56 eipTags := []tags.ResourceTag{ 57 { 58 Key: "muh", 59 Value: "lala", 60 }, 61 { 62 Key: "kuh", 63 Value: "lala", 64 }, 65 { 66 Key: "luh", 67 Value: "lala", 68 }, 69 } 70 createEipTags(t, networkV2Client, eip.ID, eipTags) 71 t.Cleanup(func() { deleteEipTags(t, networkV2Client, eip.ID, eipTags) }) 72 73 newTags, err := tags.Get(networkV2Client, "publicips", eip.ID).Extract() 74 th.AssertNoErr(t, err) 75 76 t.Logf("Assert of length between `createOptsTags` and `tags.Get()`") 77 th.AssertEquals(t, len(eipTags), len(newTags)) 78 }