github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/internal/acceptance/openstack/networking/v2/extensions/bgp/speakers/speakers.go (about) 1 package speakers 2 3 import ( 4 "context" 5 "strconv" 6 "testing" 7 8 "github.com/vnpaycloud-console/gophercloud/v2" 9 "github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/tools" 10 "github.com/vnpaycloud-console/gophercloud/v2/openstack/networking/v2/extensions/bgp/speakers" 11 th "github.com/vnpaycloud-console/gophercloud/v2/testhelper" 12 ) 13 14 func CreateBGPSpeaker(t *testing.T, client *gophercloud.ServiceClient) (*speakers.BGPSpeaker, error) { 15 opts := speakers.CreateOpts{ 16 IPVersion: 4, 17 AdvertiseFloatingIPHostRoutes: false, 18 AdvertiseTenantNetworks: true, 19 Name: tools.RandomString("TESTACC-BGPSPEAKER-", 8), 20 LocalAS: "3000", 21 Networks: []string{}, 22 } 23 24 t.Logf("Attempting to create BGP Speaker: %s", opts.Name) 25 bgpSpeaker, err := speakers.Create(context.TODO(), client, opts).Extract() 26 if err != nil { 27 return bgpSpeaker, err 28 } 29 30 localas, err := strconv.Atoi(opts.LocalAS) 31 th.AssertEquals(t, bgpSpeaker.Name, opts.Name) 32 th.AssertEquals(t, bgpSpeaker.LocalAS, localas) 33 th.AssertEquals(t, bgpSpeaker.IPVersion, opts.IPVersion) 34 th.AssertEquals(t, bgpSpeaker.AdvertiseTenantNetworks, opts.AdvertiseTenantNetworks) 35 th.AssertEquals(t, bgpSpeaker.AdvertiseFloatingIPHostRoutes, opts.AdvertiseFloatingIPHostRoutes) 36 t.Logf("Successfully created BGP Speaker") 37 tools.PrintResource(t, bgpSpeaker) 38 return bgpSpeaker, err 39 }