@@ -2,7 +2,6 @@ package systemstatistics
22
33import (
44 "encoding/xml"
5- "fmt"
65 "io"
76 "os"
87 "testing"
@@ -173,105 +172,17 @@ func TestStatisticsIPv6Unmarshaling(t *testing.T) {
173172 if err != nil {
174173
175174 }
176- fmt .Printf ("total packets received is %v" , result .Statistics .Ip6 .TotalPacketsReceived )
177-
178- result .Statistics .Text = ""
179175 result .Statistics .Ip6 .Text = ""
180- tc .expect .Statistics .Text = ""
181- tc .expect .Statistics .Ip6 .Text = ""
182-
183- assert .Equal (t , tc .expect .Statistics .Ip6 .TotalPacketsReceived , result .Statistics .Ip6 .TotalPacketsReceived , tc .name )
184- assert .NoError (t , err , "unmarshal should not return error" )
185- })
186- }
187- }
188-
189- // Tests for the IPv6 sub-structure (Ip6) of SystemStatistics. We use inline XML to focus on Ip6.
190- /*
191- func TestStatisticsIPv66Unmarshaling(t *testing.T) {
192- IPv6XMLDataCase1, _ := os.Open("testsFiles/IPv6/ipv6TestDataCase1.xml")
193- IPv6DataCase1, _ := io.ReadAll(IPv6XMLDataCase1)
194- type testCase struct {
195- name string
196- xmlInput string
197- expect func(t *testing.T, got SystemStatistics)
198- }
199- tests := []testCase{
200- {
201- name: "complete_ipv6_statistics",
202- xmlInput: string(IPv6DataCase1),
203- expect: func(t *testing.T, got SystemStatistics) {
204- ip6 := got.Statistics.Ip6
205- assert.Equal(t, float64(100), ip6.TotalPacketsReceived)
206- assert.Equal(t, float64(1), ip6.Ip6PacketsWithSizeSmallerThanMinimum)
207- assert.Equal(t, float64(2), ip6.PacketsWithDatasizeLessThanDataLength)
208- assert.Equal(t, float64(3), ip6.Ip6PacketsWithBadOptions)
209- assert.Equal(t, float64(4), ip6.Ip6PacketsWithIncorrectVersionNumber)
210- assert.Equal(t, float64(5), ip6.Ip6FragmentsReceived)
211- assert.Equal(t, float64(6), ip6.DuplicateOrOutOfSpaceFragmentsDropped)
212- assert.Equal(t, float64(7), ip6.Ip6FragmentsDroppedAfterTimeout)
213- assert.Equal(t, float64(8), ip6.FragmentsThatExceededLimit)
214- assert.Equal(t, float64(9), ip6.Ip6PacketsReassembledOk)
215- assert.Equal(t, float64(10), ip6.Ip6PacketsForThisHost)
216- assert.Equal(t, float64(11), ip6.Ip6PacketsForwarded)
217- assert.Equal(t, float64(12), ip6.Ip6PacketsNotForwardable)
218- assert.Equal(t, float64(13), ip6.Ip6RedirectsSent)
219- assert.Equal(t, float64(14), ip6.Ip6PacketsSentFromThisHost)
220- assert.Equal(t, float64(15), ip6.Ip6PacketsSentWithFabricatedIpHeader)
221- assert.Equal(t, float64(16), ip6.Ip6OutputPacketsDroppedDueToNoBufs)
222- assert.Equal(t, float64(17), ip6.Ip6OutputPacketsDiscardedDueToNoRoute)
223- assert.Equal(t, float64(18), ip6.Ip6OutputDatagramsFragmented)
224- assert.Equal(t, float64(19), ip6.Ip6FragmentsCreated)
225- assert.Equal(t, float64(20), ip6.Ip6DatagramsThatCanNotBeFragmented)
226- assert.Equal(t, float64(21), ip6.PacketsThatViolatedScopeRules)
227- assert.Equal(t, float64(22), ip6.MulticastPacketsWhichWeDoNotJoin)
228- assert.Equal(t, float64(23), ip6.Ip6nhTcp)
229- assert.Equal(t, float64(24), ip6.Ip6nhUdp)
230- assert.Equal(t, float64(25), ip6.Ip6nhIcmp6)
231- assert.Equal(t, float64(26), ip6.PacketsWhoseHeadersAreNotContinuous)
232- assert.Equal(t, float64(27), ip6.TunnelingPacketsThatCanNotFindGif)
233- assert.Equal(t, float64(28), ip6.PacketsDiscardedDueToTooMayHeaders)
234- assert.Equal(t, float64(29), ip6.FailuresOfSourceAddressSelection)
235- assert.Equal(t, 2, len(ip6.HeaderType))
236- var defLink, defGlob, polLink, polGlob float64
237- for _, h := range ip6.HeaderType {
238- switch h.HeaderForSourceAddressSelection {
239- case "default":
240- defLink = h.LinkLocals
241- defGlob = h.Globals
242- case "policy":
243- polLink = h.LinkLocals
244- polGlob = h.Globals
245- }
246- }
247- assert.Equal(t, float64(30), defLink)
248- assert.Equal(t, float64(31), defGlob)
249- assert.Equal(t, float64(32), polLink)
250- assert.Equal(t, float64(33), polGlob)
251- assert.Equal(t, float64(34), ip6.ForwardCacheHit)
252- assert.Equal(t, float64(35), ip6.ForwardCacheMiss)
253- assert.Equal(t, float64(36), ip6.Ip6PacketsDestinedToDeadNextHop)
254- assert.Equal(t, float64(37), ip6.Ip6OptionPacketsDroppedDueToRateLimit)
255- assert.Equal(t, float64(38), ip6.Ip6PacketsDropped)
256- assert.Equal(t, float64(39), ip6.PacketsDroppedDueToBadProtocol)
257- assert.Equal(t, float64(40), ip6.TransitRePacketDroppedOnMgmtInterface)
258- assert.Equal(t, float64(41), ip6.PacketUsedFirstNexthopInEcmpUnilist)
259- },
260- },
261- }
262-
263- for _, tc := range tests {
264- t.Run(tc.name, func(t *testing.T) {
265- var got SystemStatistics
266- err := xml.Unmarshal([]byte(tc.xmlInput), &got)
176+ for i , _ := range result .Statistics .Ip6 .HeaderType {
177+ result .Statistics .Ip6 .HeaderType [i ].Text = ""
178+ tc .expect .Statistics .Ip6 .HeaderType [i ].HeaderForSourceAddressSelection = ""
179+ }
180+ assert .Equal (t , tc .expect .Statistics .Ip6 , result .Statistics .Ip6 , tc .name )
267181 assert .NoError (t , err , "unmarshal should not return error" )
268- tc.expect(t, got)
269182 })
270183 }
271184}
272185
273- */
274-
275186func TestStatisticsUDPUnmarshaling (t * testing.T ) {
276187 UDPXMLDataCase1 , _ := os .Open ("testsFiles/UDP/UDPTestDataCase1.xml" )
277188 UDPDataCase1 , _ := io .ReadAll (UDPXMLDataCase1 )
0 commit comments