From 802029d83a307f4ac39d7f3d0e34b6b7979270ef Mon Sep 17 00:00:00 2001 From: Steven Hiscocks Date: Sun, 15 Dec 2013 22:20:48 +0000 Subject: [PATCH] BF: Database test keep ticket present in memory so address is reused This bug only seemed to effect python2.6 which seemed hasty to reuse the memory id that was assigned to the ticket which was being used for reference --- fail2ban/tests/databasetestcase.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/fail2ban/tests/databasetestcase.py b/fail2ban/tests/databasetestcase.py index 969ea6ff..c4c5f53e 100644 --- a/fail2ban/tests/databasetestcase.py +++ b/fail2ban/tests/databasetestcase.py @@ -163,17 +163,16 @@ class DatabaseTest(unittest.TestCase): self.assertEqual(ticket.getMatches(), ["abc\n", "123\n"]) # Should cache result if no extra bans added - ticketID = id(ticket) self.assertEqual( - ticketID, + id(ticket), id(self.db.getBansMerged("127.0.0.1", jail=self.jail))) - ticket = FailTicket("127.0.0.1", 40, ["ABC\n"]) + newTicket = FailTicket("127.0.0.1", 40, ["ABC\n"]) ticket.setAttempt(40) - self.db.addBan(jail2, ticket) + self.db.addBan(self.jail, newTicket) # Added ticket, so cache should have been cleared self.assertNotEqual( - ticketID, + id(ticket), id(self.db.getBansMerged("127.0.0.1", jail=self.jail))) def testPurge(self):