From f8761a67a4bada0777069793a7df50e8a59163fc Mon Sep 17 00:00:00 2001 From: Julian Kornberger Date: Wed, 31 Oct 2018 13:30:29 +0100 Subject: [PATCH] Add more tests --- fixtures/ipset_list_result | Bin 0 -> 228 bytes fixtures/ipset_protocol_result | Bin 0 -> 12 bytes ipset_linux_test.go | 47 +++++++++++++++++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 fixtures/ipset_list_result create mode 100644 fixtures/ipset_protocol_result create mode 100644 ipset_linux_test.go diff --git a/fixtures/ipset_list_result b/fixtures/ipset_list_result new file mode 100644 index 0000000000000000000000000000000000000000..372750954b9d2cfba1cd77aef7989c325f51d75a GIT binary patch literal 228 zcmYL>F%E)25JmqEf)leC)CQ<*wX!xATxBH^OjL|`050SeZ0tOQSJ2kZ8O6}-%gg>Z z1i*(uAhaOlyY1$1t`WjR>FRR1ce#AY##hMO`*MYT!x(1}XG}6VAxy-TsnEO_u{tpV z;V@#bdVB;o+7B?o;{sft+UO>H+g~HID6#E5k-0^RqN=8Acfz7=4S6v1Z+X_Ww|mzT EJ{<)ZmjD0& literal 0 HcmV?d00001 diff --git a/fixtures/ipset_protocol_result b/fixtures/ipset_protocol_result new file mode 100644 index 0000000000000000000000000000000000000000..9097cdd7631fedeaf59a4d7291d29c471e1b98cb GIT binary patch literal 12 RcmZQ#U|?WnU}Rte(f|Nz01p5F literal 0 HcmV?d00001 diff --git a/ipset_linux_test.go b/ipset_linux_test.go new file mode 100644 index 000000000..e75a72ebb --- /dev/null +++ b/ipset_linux_test.go @@ -0,0 +1,47 @@ +package netlink + +import ( + "io/ioutil" + "net" + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestParseIpsetProtocolResult(t *testing.T) { + assert := assert.New(t) + + msgBytes, err := ioutil.ReadFile("fixtures/ipset_protocol_result") + assert.NoError(err) + + msg := ipsetUnserialize(msgBytes) + assert.EqualValues(6, msg.Protocol) +} + +func TestParseIpsetListResult(t *testing.T) { + assert := assert.New(t) + + msgBytes, err := ioutil.ReadFile("fixtures/ipset_list_result") + assert.NoError(err) + + msg := ipsetUnserialize(msgBytes) + assert.Equal("clients", msg.SetName) + assert.Equal("hash:mac", msg.TypeName) + assert.EqualValues(6, msg.Protocol) + assert.EqualValues(0, msg.References) + assert.EqualValues(2, msg.NumEntries) + assert.EqualValues(1024, msg.HashSize) + assert.EqualValues(3600, *msg.Timeout) + assert.EqualValues(65536, msg.MaxElements) + assert.Len(msg.Entries, 2) + + // first entry + assert.Equal(3577, int(*msg.Entries[0].Timeout)) + assert.Equal(4121, int(*msg.Entries[0].Bytes)) + assert.Equal(42, int(*msg.Entries[0].Packets)) + assert.Equal("foo bar", msg.Entries[0].Comment) + assert.EqualValues(net.HardwareAddr{0xde, 0xad, 0x0, 0x0, 0xbe, 0xef}, msg.Entries[0].MAC) + + // second entry + assert.EqualValues(net.HardwareAddr{0x1, 0x2, 0x3, 0x0, 0x1, 0x2}, msg.Entries[1].MAC) +}