github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/internal/acceptance/openstack/baremetal/v1/conductors_test.go (about) 1 //go:build acceptance || baremetal || conductors 2 3 package v1 4 5 import ( 6 "context" 7 "testing" 8 9 "github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/clients" 10 "github.com/vnpaycloud-console/gophercloud/v2/internal/acceptance/tools" 11 "github.com/vnpaycloud-console/gophercloud/v2/openstack/baremetal/v1/conductors" 12 "github.com/vnpaycloud-console/gophercloud/v2/pagination" 13 14 th "github.com/vnpaycloud-console/gophercloud/v2/testhelper" 15 ) 16 17 func TestConductorsListAndGet(t *testing.T) { 18 clients.RequireLong(t) 19 20 client, err := clients.NewBareMetalV1Client() 21 th.AssertNoErr(t, err) 22 client.Microversion = "1.49" 23 24 err = conductors.List(client, conductors.ListOpts{}).EachPage(context.TODO(), func(_ context.Context, page pagination.Page) (bool, error) { 25 conductorList, err := conductors.ExtractConductors(page) 26 if err != nil { 27 return false, err 28 } 29 30 tools.PrintResource(t, conductorList) 31 32 if len(conductorList) > 0 { 33 conductor, err := conductors.Get(context.TODO(), client, conductorList[0].Hostname).Extract() 34 th.AssertNoErr(t, err) 35 36 tools.PrintResource(t, conductor) 37 } 38 39 return true, nil 40 }) 41 th.AssertNoErr(t, err) 42 }