github.com/gophercloud/gophercloud@v1.11.0/internal/acceptance/openstack/networking/v2/extensions/bgp/peers/bgppeers_test.go (about) 1 package peers 2 3 import ( 4 "testing" 5 6 "github.com/gophercloud/gophercloud/internal/acceptance/clients" 7 "github.com/gophercloud/gophercloud/internal/acceptance/tools" 8 "github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/bgp/peers" 9 th "github.com/gophercloud/gophercloud/testhelper" 10 ) 11 12 func TestBGPPeerCRUD(t *testing.T) { 13 clients.RequireAdmin(t) 14 15 client, err := clients.NewNetworkV2Client() 16 th.AssertNoErr(t, err) 17 18 // Create a BGP Peer 19 bgpPeerCreated, err := CreateBGPPeer(t, client) 20 th.AssertNoErr(t, err) 21 22 // Get a BGP Peer 23 bgpPeerGot, err := peers.Get(client, bgpPeerCreated.ID).Extract() 24 th.AssertNoErr(t, err) 25 th.AssertEquals(t, bgpPeerCreated.ID, bgpPeerGot.ID) 26 th.AssertEquals(t, bgpPeerCreated.Name, bgpPeerGot.Name) 27 28 // Update a BGP Peer 29 newBGPPeerName := tools.RandomString("TESTACC-BGPPEER-", 10) 30 updateBGPOpts := peers.UpdateOpts{ 31 Name: newBGPPeerName, 32 Password: tools.MakeNewPassword(""), 33 } 34 bgpPeerUpdated, err := peers.Update(client, bgpPeerGot.ID, updateBGPOpts).Extract() 35 th.AssertNoErr(t, err) 36 th.AssertEquals(t, bgpPeerUpdated.Name, newBGPPeerName) 37 t.Logf("Update BGP Peer, renamed from %s to %s", bgpPeerGot.Name, bgpPeerUpdated.Name) 38 39 // List all BGP Peers 40 allPages, err := peers.List(client).AllPages() 41 th.AssertNoErr(t, err) 42 allPeers, err := peers.ExtractBGPPeers(allPages) 43 th.AssertNoErr(t, err) 44 45 t.Logf("Retrieved BGP Peers") 46 tools.PrintResource(t, allPeers) 47 th.AssertIntGreaterOrEqual(t, len(allPeers), 1) 48 49 // Delete a BGP Peer 50 t.Logf("Attempting to delete BGP Peer: %s", bgpPeerUpdated.Name) 51 err = peers.Delete(client, bgpPeerGot.ID).ExtractErr() 52 th.AssertNoErr(t, err) 53 54 bgpPeerGot, err = peers.Get(client, bgpPeerGot.ID).Extract() 55 th.AssertErr(t, err) 56 t.Logf("BGP Peer %s deleted", bgpPeerUpdated.Name) 57 }