From 64b0a7a467df3b13d25e7acecbbf7f1861b64ab8 Mon Sep 17 00:00:00 2001 From: Wataru Ishida Date: Thu, 22 Sep 2016 09:36:43 +0000 Subject: packet/bgp: fix bug of CompareFlowSpecNLRI() Signed-off-by: Wataru Ishida --- packet/bgp/bgp_test.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'packet/bgp/bgp_test.go') diff --git a/packet/bgp/bgp_test.go b/packet/bgp/bgp_test.go index 0fcef12d..194dbf12 100644 --- a/packet/bgp/bgp_test.go +++ b/packet/bgp/bgp_test.go @@ -516,3 +516,25 @@ func Test_EVPNIPPrefixRoute(t *testing.T) { } } + +func Test_CompareFlowSpecNLRI(t *testing.T) { + assert := assert.New(t) + cmp, err := ParseFlowSpecComponents(RF_FS_IPv4_UC, "destination 10.0.0.2/32 source 10.0.0.1/32 destination-port =3128 protocol tcp") + assert.Nil(err) + n1 := &FlowSpecNLRI{Value: cmp, rf: RF_FS_IPv4_UC} + cmp, err = ParseFlowSpecComponents(RF_FS_IPv4_UC, "source 10.0.0.0/24 destination-port =3128 protocol tcp") + assert.Nil(err) + n2 := &FlowSpecNLRI{Value: cmp, rf: RF_FS_IPv4_UC} + cmp, err = ParseFlowSpecComponents(RF_FS_IPv4_UC, "source 10.0.0.9/32 port =80 =8080 destination-port >8080&<8080 =3128 source-port >1024 protocol udp tcp") + n3 := &FlowSpecNLRI{Value: cmp, rf: RF_FS_IPv4_UC} + assert.Nil(err) + cmp, err = ParseFlowSpecComponents(RF_FS_IPv4_UC, "destination 192.168.0.2/32") + n4 := &FlowSpecNLRI{Value: cmp, rf: RF_FS_IPv4_UC} + assert.Nil(err) + r, err := CompareFlowSpecNLRI(n1, n2) + assert.Nil(err) + assert.True(r > 0) + r, err = CompareFlowSpecNLRI(n3, n4) + assert.Nil(err) + assert.True(r < 0) +} -- cgit v1.2.3