Skip to content

Commit 1b83634

Browse files
committed
Add unittest for failing match recent module
1 parent cc1af53 commit 1b83634

File tree

1 file changed

+32
-1
lines changed

1 file changed

+32
-1
lines changed

tests/test_matches.py

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,6 +471,35 @@ def test_hashlimit(self):
471471
self.assertEqual(m.hashlimit_upto, "200/sec")
472472
self.assertEqual(m.hashlimit_burst, "5")
473473

474+
class TestRecentMatch(unittest.TestCase):
475+
def setUp(self):
476+
self.table = 'filter'
477+
self.chain = 'iptc_test_recent'
478+
iptc.easy.delete_chain(self.table, self.chain, ipv6=False, flush=True, raise_exc=False)
479+
iptc.easy.add_chain(self.table, self.chain, ipv6=False, raise_exc=True)
480+
481+
def tearDown(self):
482+
iptc.easy.delete_chain(self.table, self.chain, ipv6=False, flush=True, raise_exc=False)
483+
484+
def test_recent(self):
485+
rule_d = {
486+
'protocol': 'udp',
487+
'recent': {
488+
'mask': '255.255.255.255',
489+
'update': '',
490+
'seconds': '60',
491+
'rsource': '',
492+
'name': 'UDP-PORTSCAN',
493+
},
494+
'target': {
495+
'REJECT':{
496+
'reject-with': 'icmp-port-unreachable'
497+
}
498+
}
499+
}
500+
iptc.easy.add_rule(self.table, self.chain, rule_d)
501+
rule2_d = iptc.easy.get_rule(self.table, self.chain, -1)
502+
self.assertEqual(rule_d, rule2_d)
474503

475504
def suite():
476505
suite_match = unittest.TestLoader().loadTestsFromTestCase(TestMatch)
@@ -488,6 +517,8 @@ def suite():
488517
TestXTConntrackMatch)
489518
suite_hashlimit = unittest.TestLoader().loadTestsFromTestCase(
490519
TestHashlimitMatch)
520+
suite_recent = unittest.TestLoader().loadTestsFromTestCase(
521+
TestRecentMatch)
491522
extra_suites = []
492523
if is_table6_available(iptc.Table6.FILTER):
493524
extra_suites += unittest.TestLoader().loadTestsFromTestCase(
@@ -496,7 +527,7 @@ def suite():
496527
return unittest.TestSuite([suite_match, suite_udp, suite_mark,
497528
suite_limit, suite_mport, suite_comment,
498529
suite_iprange, suite_state, suite_conntrack,
499-
suite_hashlimit] + extra_suites)
530+
suite_hashlimit, suite_recent] + extra_suites)
500531

501532

502533
def run_tests():

0 commit comments

Comments
 (0)