github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/acceptance/openstack/elb/v3/pools_test.go (about) 1 package v3 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/pointerto" 9 "github.com/opentelekomcloud/gophertelekomcloud/openstack/elb/v3/pools" 10 th "github.com/opentelekomcloud/gophertelekomcloud/testhelper" 11 ) 12 13 func TestPoolList(t *testing.T) { 14 client, err := clients.NewElbV3Client() 15 th.AssertNoErr(t, err) 16 17 listOpts := pools.ListOpts{} 18 poolPages, err := pools.List(client, listOpts).AllPages() 19 th.AssertNoErr(t, err) 20 21 poolList, err := pools.ExtractPools(poolPages) 22 th.AssertNoErr(t, err) 23 24 for _, pool := range poolList { 25 tools.PrintResource(t, pool) 26 } 27 } 28 29 func TestPoolLifecycle(t *testing.T) { 30 client, err := clients.NewElbV3Client() 31 th.AssertNoErr(t, err) 32 33 loadbalancerID := createLoadBalancer(t, client) 34 defer deleteLoadbalancer(t, client, loadbalancerID) 35 36 poolID := createPool(t, client, loadbalancerID) 37 defer deletePool(t, client, poolID) 38 39 t.Logf("Attempting to update ELBv3 Pool: %s", poolID) 40 poolName := tools.RandomString("update-pool-", 3) 41 emptyDescription := "" 42 updateOpts := pools.UpdateOpts{ 43 Name: &poolName, 44 Description: &emptyDescription, 45 LBMethod: "ROUND_ROBIN", 46 DeletionProtectionEnable: pointerto.Bool(false), 47 } 48 _, err = pools.Update(client, poolID, updateOpts).Extract() 49 th.AssertNoErr(t, err) 50 t.Logf("Updated ELBv3 Pool: %s", poolID) 51 52 newPool, err := pools.Get(client, poolID).Extract() 53 th.AssertNoErr(t, err) 54 th.AssertEquals(t, *updateOpts.Name, newPool.Name) 55 th.AssertEquals(t, emptyDescription, newPool.Description) 56 th.AssertEquals(t, updateOpts.LBMethod, newPool.LBMethod) 57 th.AssertEquals(t, false, newPool.DeletionProtectionEnable) 58 }