diff options
author | Steven Hiscocks <steven@hiscocks.me.uk> | 2013-04-01 11:22:40 +0100 |
---|---|---|
committer | Steven Hiscocks <steven@hiscocks.me.uk> | 2013-04-01 11:22:40 +0100 |
commit | e3bd2042ebcdf891eef7d04632b22ce82e1eeffd (patch) | |
tree | bafe258f5d92d301b702db694303a6a5e1bb6c18 /fail2ban/tests/banmanagertestcase.py | |
parent | e53bfafd6afaa07b7049163a3363ab7cead789e9 (diff) | |
download | fail2ban-e3bd2042ebcdf891eef7d04632b22ce82e1eeffd.tar.gz |
TST+ENH: Move testcases to part of fail2ban module
This allows fail2ban-testcases to be run on an installed fail2ban
instance.
TODO: Fix tests requiring config files
Diffstat (limited to 'fail2ban/tests/banmanagertestcase.py')
-rw-r--r-- | fail2ban/tests/banmanagertestcase.py | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/fail2ban/tests/banmanagertestcase.py b/fail2ban/tests/banmanagertestcase.py new file mode 100644 index 00000000..8d0f1929 --- /dev/null +++ b/fail2ban/tests/banmanagertestcase.py @@ -0,0 +1,60 @@ +# emacs: -*- mode: python; py-indent-offset: 4; indent-tabs-mode: t -*- +# vi: set ft=python sts=4 ts=4 sw=4 noet : + +# This file is part of Fail2Ban. +# +# Fail2Ban is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# Fail2Ban is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Fail2Ban; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +# Author: Cyril Jaquier +# +# $Revision$ + +__author__ = "Cyril Jaquier" +__version__ = "$Revision$" +__date__ = "$Date$" +__copyright__ = "Copyright (c) 2004 Cyril Jaquier" +__license__ = "GPL" + +import unittest + +from fail2ban.server.banmanager import BanManager +from fail2ban.server.ticket import BanTicket + +class AddFailure(unittest.TestCase): + + def setUp(self): + """Call before every test case.""" + self.__ticket = BanTicket('193.168.0.128', 1167605999.0) + self.__banManager = BanManager() + self.assertTrue(self.__banManager.addBanTicket(self.__ticket)) + + def tearDown(self): + """Call after every test case.""" + + def testAdd(self): + self.assertEqual(self.__banManager.size(), 1) + + def testAddDuplicate(self): + self.assertFalse(self.__banManager.addBanTicket(self.__ticket)) + self.assertEqual(self.__banManager.size(), 1) + + def testInListOK(self): + ticket = BanTicket('193.168.0.128', 1167605999.0) + self.assertTrue(self.__banManager._inBanList(ticket)) + + def testInListNOK(self): + ticket = BanTicket('111.111.1.111', 1167605999.0) + self.assertFalse(self.__banManager._inBanList(ticket)) + |