github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/networking/v2/extensions/bgp/speakers/speakers.go (about)

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