summaryrefslogtreecommitdiff
path: root/gstudio/tests/spam_checker.py
diff options
context:
space:
mode:
authorgnowgi <nagarjun@gnowledge.org>2012-03-15 16:19:20 +0530
committergnowgi <nagarjun@gnowledge.org>2012-03-15 16:19:20 +0530
commit7a4f561e851fdc7246d804c3abb6748b8a4199a6 (patch)
treed2afc3463fd49625a9be482012f5c3bfcf7c42b9 /gstudio/tests/spam_checker.py
downloadgnowsys-7a4f561e851fdc7246d804c3abb6748b8a4199a6.tar.gz
master trunk of gnowsys-studio
Diffstat (limited to 'gstudio/tests/spam_checker.py')
-rw-r--r--gstudio/tests/spam_checker.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/gstudio/tests/spam_checker.py b/gstudio/tests/spam_checker.py
new file mode 100644
index 00000000..e40ae942
--- /dev/null
+++ b/gstudio/tests/spam_checker.py
@@ -0,0 +1,40 @@
+"""Test cases for Gstudio's spam_checker"""
+from __future__ import with_statement
+import warnings
+
+from django.test import TestCase
+
+from gstudio.spam_checker import get_spam_checker
+from gstudio.spam_checker.backends.all_is_spam import backend
+
+
+class SpamCheckerTestCase(TestCase):
+ """Test cases for gstudio.spam_checker"""
+
+ def test_get_spam_checker(self):
+ try:
+ with warnings.catch_warnings(record=True) as w:
+ self.assertEquals(get_spam_checker('mymodule.myclass'), None)
+ self.assertTrue(issubclass(w[-1].metatype, RuntimeWarning))
+ self.assertEquals(
+ str(w[-1].message),
+ 'mymodule.myclass backend cannot be imported')
+ except AttributeError:
+ # Fail under Python2.5, because of'warnings.catch_warnings'
+ pass
+
+ try:
+ with warnings.catch_warnings(record=True) as w:
+ self.assertEquals(
+ get_spam_checker('gstudio.tests.custom_spam_checker'), None)
+ self.assertTrue(issubclass(w[-1].metatype, RuntimeWarning))
+ self.assertEquals(
+ str(w[-1].message),
+ 'This backend only exists for testing')
+ except AttributeError:
+ # Fail under Python2.5, because of'warnings.catch_warnings'
+ pass
+
+ self.assertEquals(
+ get_spam_checker('gstudio.spam_checker.backends.all_is_spam'),
+ backend)