From c16cce4bf0a17f861771074febcc6827d82b05a8 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Fri, 13 Oct 2023 08:52:14 -0700 Subject: [PATCH] add tests --- tests/fixtures/generic/netstat-no-state.json | 1 + tests/fixtures/generic/netstat-no-state.out | 6 ++++++ tests/test_netstat.py | 12 ++++++++++++ 3 files changed, 19 insertions(+) create mode 100644 tests/fixtures/generic/netstat-no-state.json create mode 100644 tests/fixtures/generic/netstat-no-state.out diff --git a/tests/fixtures/generic/netstat-no-state.json b/tests/fixtures/generic/netstat-no-state.json new file mode 100644 index 00000000..5f8e6150 --- /dev/null +++ b/tests/fixtures/generic/netstat-no-state.json @@ -0,0 +1 @@ +[{"proto":"udp","recv_q":0,"send_q":0,"local_address":"0.0.0.0","foreign_address":"0.0.0.0","state":null,"program_name":"avahi-daemon: r","kind":"network","pid":442,"local_port":"5353","foreign_port":"*","transport_protocol":"udp","network_protocol":"ipv4","local_port_num":5353},{"proto":"udp","recv_q":0,"send_q":0,"local_address":"0.0.0.0","foreign_address":"0.0.0.0","state":null,"program_name":"avahi-daemon: r","kind":"network","pid":442,"local_port":"49926","foreign_port":"*","transport_protocol":"udp","network_protocol":"ipv4","local_port_num":49926},{"proto":"udp6","recv_q":0,"send_q":0,"local_address":"::","foreign_address":"::","state":null,"program_name":"avahi-daemon: r","kind":"network","pid":442,"local_port":"5353","foreign_port":"*","transport_protocol":"udp","network_protocol":"ipv6","local_port_num":5353},{"proto":"udp6","recv_q":0,"send_q":0,"local_address":"::","foreign_address":"::","state":null,"program_name":"avahi-daemon: r","kind":"network","pid":442,"local_port":"35569","foreign_port":"*","transport_protocol":"udp","network_protocol":"ipv6","local_port_num":35569}] diff --git a/tests/fixtures/generic/netstat-no-state.out b/tests/fixtures/generic/netstat-no-state.out new file mode 100644 index 00000000..cabcff3f --- /dev/null +++ b/tests/fixtures/generic/netstat-no-state.out @@ -0,0 +1,6 @@ +Active Internet connections (only servers) +Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name +udp 0 0 0.0.0.0:5353 0.0.0.0:* 442/avahi-daemon: r +udp 0 0 0.0.0.0:49926 0.0.0.0:* 442/avahi-daemon: r +udp6 0 0 :::5353 :::* 442/avahi-daemon: r +udp6 0 0 :::35569 :::* 442/avahi-daemon: r diff --git a/tests/test_netstat.py b/tests/test_netstat.py index f8e53985..75531825 100644 --- a/tests/test_netstat.py +++ b/tests/test_netstat.py @@ -76,6 +76,9 @@ class MyTests(unittest.TestCase): with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/netstat-old.out'), 'r', encoding='utf-8') as f: generic_netstat_old = f.read() + with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/netstat-no-state.out'), 'r', encoding='utf-8') as f: + generic_netstat_no_state = f.read() + with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/windows/windows-10/netstat.out'), 'r', encoding='utf-8') as f: windows_netstat = f.read() @@ -200,6 +203,9 @@ class MyTests(unittest.TestCase): with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/netstat-old.json'), 'r', encoding='utf-8') as f: generic_netstat_old_json = json.loads(f.read()) + with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/netstat-no-state.json'), 'r', encoding='utf-8') as f: + generic_netstat_no_state_json = json.loads(f.read()) + with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/windows/windows-10/netstat.json'), 'r', encoding='utf-8') as f: windows_netstat_json = json.loads(f.read()) @@ -389,6 +395,12 @@ class MyTests(unittest.TestCase): """ self.assertEqual(jc.parsers.netstat.parse(self.generic_netstat_old, quiet=True), self.generic_netstat_old_json) + def test_netstat_no_state_generic(self): + """ + Test 'netstat' with no state in network output + """ + self.assertEqual(jc.parsers.netstat.parse(self.generic_netstat_no_state, quiet=True), self.generic_netstat_no_state_json) + def test_netstat_r_centos_7_7(self): """ Test 'netstat -r' on Centos 7.7