Completed lorem tag test coverage.
+from django.template.base import TemplateSyntaxError
from django.test import SimpleTestCase
-from django.utils.lorem_ipsum import WORDS
+from django.utils.lorem_ipsum import COMMON_P, WORDS
from ..utils import setup
@@ -18,3 +19,24 @@ class LoremTagTests(SimpleTestCase):
self.assertEqual(len(words), 3)
for word in words:
self.assertIn(word, WORDS)
+
+ @setup({'lorem_default': '{% lorem %}'})
+ def test_lorem_default(self):
+ output = self.engine.render_to_string('lorem_default')
+ self.assertEqual(output, COMMON_P)
+
+ @setup({'lorem_syntax_error': '{% lorem 1 2 3 4 %}'})
+ def test_lorem_syntax(self):
+ msg = "Incorrect format for 'lorem' tag"
+ with self.assertRaisesMessage(TemplateSyntaxError, msg):
+ self.engine.render_to_string('lorem_syntax_error')
+
+ @setup({'lorem_multiple_paragraphs': '{% lorem 2 p %}'})
+ def test_lorem_multiple_paragraphs(self):
+ output = self.engine.render_to_string('lorem_multiple_paragraphs')
+ self.assertEqual(output.count('<p>'), 2)
+
+ @setup({'lorem_incorrect_count': '{% lorem two p %}'})
+ def test_lorem_incorrect_count(self):
+ output = self.engine.render_to_string('lorem_incorrect_count')
+ self.assertEqual(output.count('<p>'), 1)
