Mercurial > public > sg101
view gpp/antispam/tests/utils_tests.py @ 505:a5d11471d031
Refactor the logic in the rate limiter decorator. Check to see if the request was ajax, as the ajax view always returns 200. Have to decode the JSON response to see if an error occurred or not.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 03 Dec 2011 19:13:38 +0000 |
parents | 7c3816d76c6c |
children |
line wrap: on
line source
""" Tests for the antispam application. """ from django.test import TestCase from django.core.cache import cache from antispam import SPAM_PHRASE_KEY from antispam.models import SpamPhrase from antispam.utils import contains_spam class AntispamCase(TestCase): def test_no_phrases(self): """ Tests that an empty spam phrase table works. """ cache.delete(SPAM_PHRASE_KEY) self.assertFalse(contains_spam("Here is some random text.")) def test_phrases(self): """ Simple test of some phrases. """ SpamPhrase.objects.create(phrase="grytner") SpamPhrase.objects.create(phrase="allday.ru") SpamPhrase.objects.create(phrase="stefa.pl") self.assert_(contains_spam("grytner")) self.assert_(contains_spam("11grytner")) self.assert_(contains_spam("11grytner>")) self.assert_(contains_spam("1djkl jsd stefa.pl")) self.assert_(contains_spam("1djkl jsd <stefa.pl---sd8")) self.assert_(contains_spam("1dsdjallday.rukl jsd <stefa.pl---sd8")) self.assert_(contains_spam(" 1djallday.rukl")) self.assertFalse(contains_spam("this one is spam free."))