12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- from django.test import TestCase
- from ..models import Ban
- class BansManagerTests(TestCase):
- def setUp(self):
- Ban.objects.bulk_create(
- [
- Ban(check_type=Ban.USERNAME, banned_value="user"),
- Ban(check_type=Ban.EMAIL, banned_value="user@example.com"),
- Ban(check_type=Ban.IP, banned_value="127.0.0.1"),
- ]
- )
- def test_get_ban_for_banned_name(self):
- """get_ban finds ban for given username"""
- self.assertIsNotNone(Ban.objects.get_ban(username="User"))
- with self.assertRaises(Ban.DoesNotExist):
- Ban.objects.get_ban(username="OtherUser")
- def test_get_ban_for_banned_email(self):
- """get_ban finds ban for given email"""
- self.assertIsNotNone(Ban.objects.get_ban(email="user@example.com"))
- with self.assertRaises(Ban.DoesNotExist):
- Ban.objects.get_ban(email="otheruser@example.com")
- def test_get_ban_for_banned_ip(self):
- """get_ban finds ban for given ip"""
- self.assertIsNotNone(Ban.objects.get_ban(ip="127.0.0.1"))
- with self.assertRaises(Ban.DoesNotExist):
- Ban.objects.get_ban(ip="42.0.0.1")
- def test_get_ban_for_all_values(self):
- """get_ban finds ban for given values"""
- valid_kwargs = {"username": "User", "ip": "42.51.52.51"}
- self.assertIsNotNone(Ban.objects.get_ban(**valid_kwargs))
- invalid_kwargs = {"username": "OtherUser", "ip": "42.51.52.51"}
- with self.assertRaises(Ban.DoesNotExist):
- Ban.objects.get_ban(**invalid_kwargs)
- class BanTests(TestCase):
- def test_check_value_literal(self):
- """ban correctly tests given values"""
- test_ban = Ban(banned_value="user")
- self.assertTrue(test_ban.check_value("User"))
- self.assertFalse(test_ban.check_value("OtherUser"))
- self.assertFalse(test_ban.check_value("UserOther"))
- def test_check_value_starts_with(self):
- """ban correctly tests given values"""
- test_ban = Ban(banned_value="user*")
- self.assertTrue(test_ban.check_value("User"))
- self.assertTrue(test_ban.check_value("UserOther"))
- self.assertFalse(test_ban.check_value("NewUser"))
- def test_check_value_middle_match(self):
- """ban correctly tests given values"""
- test_ban = Ban(banned_value="u*r")
- self.assertTrue(test_ban.check_value("User"))
- self.assertTrue(test_ban.check_value("UserOther"))
- self.assertFalse(test_ban.check_value("NewUser"))
- self.assertFalse(test_ban.check_value("UserNew"))
- def test_check_value_ends_witch(self):
- """ban correctly tests given values"""
- test_ban = Ban(banned_value="*user")
- self.assertTrue(test_ban.check_value("User"))
- self.assertTrue(test_ban.check_value("OtherUser"))
- self.assertFalse(test_ban.check_value("UserOther"))
|