summaryrefslogtreecommitdiff
path: root/fail2ban/tests/banmanagertestcase.py
diff options
context:
space:
mode:
authorYaroslav Halchenko <debian@onerussian.com>2016-04-26 09:30:36 -0400
committerYaroslav Halchenko <debian@onerussian.com>2016-04-26 09:30:36 -0400
commit340a5a23f4a8453294de2bc5fe54690241230875 (patch)
treec82f090e76706b7f1ac4c158f865abd2178a3008 /fail2ban/tests/banmanagertestcase.py
parentaa303acfd6074be842c360e632c08777537e6f94 (diff)
downloadfail2ban-340a5a23f4a8453294de2bc5fe54690241230875.tar.gz
BF+ENH: fixed up testing querying cymru information + assert_dict_equal helper
Diffstat (limited to 'fail2ban/tests/banmanagertestcase.py')
-rw-r--r--fail2ban/tests/banmanagertestcase.py43
1 files changed, 23 insertions, 20 deletions
diff --git a/fail2ban/tests/banmanagertestcase.py b/fail2ban/tests/banmanagertestcase.py
index 09d2411e..8c58994c 100644
--- a/fail2ban/tests/banmanagertestcase.py
+++ b/fail2ban/tests/banmanagertestcase.py
@@ -28,7 +28,7 @@ import unittest
from ..server.banmanager import BanManager
from ..server.ticket import BanTicket
-
+from .utils import assert_dict_equal
class AddFailure(unittest.TestCase):
def setUp(self):
@@ -74,15 +74,10 @@ class StatusExtendedCymruInfo(unittest.TestCase):
def testCymruInfo(self):
cymru_info = self.__banManager.getBanListExtendedCymruInfo()
- if "assertDictEqual" in dir(self):
- self.assertDictEqual(cymru_info, {"asn": [self.__asn],
- "country": [self.__country],
- "rir": [self.__rir]})
- else:
- # Python 2.6 does not support assertDictEqual()
- self.assertEqual(cymru_info["asn"], [self.__asn])
- self.assertEqual(cymru_info["country"], [self.__country])
- self.assertEqual(cymru_info["rir"], [self.__rir])
+ assert_dict_equal(cymru_info,
+ {"asn": [self.__asn],
+ "country": [self.__country],
+ "rir": [self.__rir]})
def testCymruInfoASN(self):
self.assertEqual(
@@ -100,16 +95,24 @@ class StatusExtendedCymruInfo(unittest.TestCase):
[self.__rir])
def testCymruInfoNxdomain(self):
- ticket = BanTicket("10.0.0.0", 1167605999.0)
self.__banManager = BanManager()
+
+ # non-existing IP
+ ticket = BanTicket("0.0.0.0", 1167605999.0)
+ self.assertTrue(self.__banManager.addBanTicket(ticket))
+ cymru_info = self.__banManager.getBanListExtendedCymruInfo()
+ assert_dict_equal(cymru_info,
+ {"asn": ["nxdomain"],
+ "country": ["nxdomain"],
+ "rir": ["nxdomain"]})
+
+ # even for private IPs ASNs defined
+ # Since it outputs for all active tickets we would get previous results
+ # and new ones
+ ticket = BanTicket("10.0.0.0", 1167606000.0)
self.assertTrue(self.__banManager.addBanTicket(ticket))
cymru_info = self.__banManager.getBanListExtendedCymruInfo()
- if "assertDictEqual" in dir(self):
- self.assertDictEqual(cymru_info, {"asn": ["nxdomain"],
- "country": ["nxdomain"],
- "rir": ["nxdomain"]})
- else:
- # Python 2.6 does not support assertDictEqual()
- self.assertEqual(cymru_info["asn"], ["nxdomain"])
- self.assertEqual(cymru_info["country"], ["nxdomain"])
- self.assertEqual(cymru_info["rir"], ["nxdomain"])
+ assert_dict_equal(cymru_info,
+ {"asn": ["nxdomain", "4565",],
+ "country": ["nxdomain", "unknown"],
+ "rir": ["nxdomain", "other"]})