github.com/gophercloud/gophercloud@v1.11.0/openstack/networking/v2/extensions/trunk_details/testing/requests_test.go (about) 1 package testing 2 3 import ( 4 "fmt" 5 "net/http" 6 "testing" 7 8 "github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/trunk_details" 9 "github.com/gophercloud/gophercloud/openstack/networking/v2/ports" 10 th "github.com/gophercloud/gophercloud/testhelper" 11 fake "github.com/gophercloud/gophercloud/testhelper/client" 12 ) 13 14 func TestServerWithUsageExt(t *testing.T) { 15 th.SetupHTTP() 16 defer th.TeardownHTTP() 17 18 const portIDFixture = "dc3e8758-ee96-402d-94b0-4be5e9396c82" 19 20 th.Mux.HandleFunc("/ports/"+portIDFixture, func(w http.ResponseWriter, r *http.Request) { 21 th.TestMethod(t, r, "GET") 22 th.TestHeader(t, r, "X-Auth-Token", fake.TokenID) 23 th.TestHeader(t, r, "Accept", "application/json") 24 25 fmt.Fprint(w, PortWithTrunkDetailsResult) 26 }) 27 28 var portExt struct { 29 ports.Port 30 trunk_details.TrunkDetailsExt 31 } 32 33 // Extract basic fields. 34 err := ports.Get(fake.ServiceClient(), portIDFixture).ExtractInto(&portExt) 35 th.AssertNoErr(t, err) 36 37 th.AssertEquals(t, portExt.TrunkDetails.TrunkID, "f170c831-8c55-4ceb-ad13-75eab4a121e5") 38 th.AssertEquals(t, len(portExt.TrunkDetails.SubPorts), 1) 39 subPort := portExt.TrunkDetails.SubPorts[0] 40 th.AssertEquals(t, subPort.SegmentationID, 100) 41 th.AssertEquals(t, subPort.SegmentationType, "vlan") 42 th.AssertEquals(t, subPort.PortID, "20c673d8-7f9d-4570-b662-148d9ddcc5bd") 43 th.AssertEquals(t, subPort.MACAddress, "fa:16:3e:88:29:a0") 44 }