github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/openstack/compute/v2/attachinterfaces/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/vnpaycloud-console/gophercloud/v2/openstack/compute/v2/attachinterfaces" 8 "github.com/vnpaycloud-console/gophercloud/v2/pagination" 9 th "github.com/vnpaycloud-console/gophercloud/v2/testhelper" 10 "github.com/vnpaycloud-console/gophercloud/v2/testhelper/client" 11 ) 12 13 func TestListInterface(t *testing.T) { 14 th.SetupHTTP() 15 defer th.TeardownHTTP() 16 HandleInterfaceListSuccessfully(t) 17 18 expected := ListInterfacesExpected 19 pages := 0 20 err := attachinterfaces.List(client.ServiceClient(), "b07e7a3b-d951-4efc-a4f9-ac9f001afb7f").EachPage(context.TODO(), func(_ context.Context, page pagination.Page) (bool, error) { 21 pages++ 22 23 actual, err := attachinterfaces.ExtractInterfaces(page) 24 th.AssertNoErr(t, err) 25 26 if len(actual) != 1 { 27 t.Fatalf("Expected 1 interface, got %d", len(actual)) 28 } 29 th.CheckDeepEquals(t, expected, actual) 30 31 return true, nil 32 }) 33 th.AssertNoErr(t, err) 34 th.CheckEquals(t, 1, pages) 35 } 36 37 func TestListInterfacesAllPages(t *testing.T) { 38 th.SetupHTTP() 39 defer th.TeardownHTTP() 40 HandleInterfaceListSuccessfully(t) 41 42 allPages, err := attachinterfaces.List(client.ServiceClient(), "b07e7a3b-d951-4efc-a4f9-ac9f001afb7f").AllPages(context.TODO()) 43 th.AssertNoErr(t, err) 44 _, err = attachinterfaces.ExtractInterfaces(allPages) 45 th.AssertNoErr(t, err) 46 } 47 48 func TestGetInterface(t *testing.T) { 49 th.SetupHTTP() 50 defer th.TeardownHTTP() 51 HandleInterfaceGetSuccessfully(t) 52 53 expected := GetInterfaceExpected 54 55 serverID := "b07e7a3b-d951-4efc-a4f9-ac9f001afb7f" 56 interfaceID := "0dde1598-b374-474e-986f-5b8dd1df1d4e" 57 58 actual, err := attachinterfaces.Get(context.TODO(), client.ServiceClient(), serverID, interfaceID).Extract() 59 th.AssertNoErr(t, err) 60 th.CheckDeepEquals(t, &expected, actual) 61 } 62 63 func TestCreateInterface(t *testing.T) { 64 th.SetupHTTP() 65 defer th.TeardownHTTP() 66 HandleInterfaceCreateSuccessfully(t) 67 68 expected := CreateInterfacesExpected 69 70 serverID := "b07e7a3b-d951-4efc-a4f9-ac9f001afb7f" 71 networkID := "8a5fe506-7e9f-4091-899b-96336909d93c" 72 73 actual, err := attachinterfaces.Create(context.TODO(), client.ServiceClient(), serverID, attachinterfaces.CreateOpts{ 74 NetworkID: networkID, 75 }).Extract() 76 th.AssertNoErr(t, err) 77 th.CheckDeepEquals(t, &expected, actual) 78 } 79 80 func TestDeleteInterface(t *testing.T) { 81 th.SetupHTTP() 82 defer th.TeardownHTTP() 83 HandleInterfaceDeleteSuccessfully(t) 84 85 serverID := "b07e7a3b-d951-4efc-a4f9-ac9f001afb7f" 86 portID := "0dde1598-b374-474e-986f-5b8dd1df1d4e" 87 88 err := attachinterfaces.Delete(context.TODO(), client.ServiceClient(), serverID, portID).ExtractErr() 89 th.AssertNoErr(t, err) 90 }