Added tests for pull request #203
This commit is contained in:
@@ -12,7 +12,8 @@ from compressor.tests.offline import (
|
|||||||
OfflineGenerationTemplateTagTestCase,
|
OfflineGenerationTemplateTagTestCase,
|
||||||
OfflineGenerationTestCaseWithContext,
|
OfflineGenerationTestCaseWithContext,
|
||||||
OfflineGenerationTestCaseErrors,
|
OfflineGenerationTestCaseErrors,
|
||||||
OfflineGenerationTestCase)
|
OfflineGenerationTestCase,
|
||||||
|
OfflineGenerationTestCaseWithError)
|
||||||
from compressor.tests.parsers import (LxmlParserTests, Html5LibParserTests,
|
from compressor.tests.parsers import (LxmlParserTests, Html5LibParserTests,
|
||||||
BeautifulSoupParserTests, HtmlParserTests)
|
BeautifulSoupParserTests, HtmlParserTests)
|
||||||
from compressor.tests.signals import PostCompressSignalTestCase
|
from compressor.tests.signals import PostCompressSignalTestCase
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ except ImportError:
|
|||||||
|
|
||||||
from django.template import Template, Context
|
from django.template import Template, Context
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
|
from django.core.management.base import CommandError
|
||||||
|
|
||||||
from compressor.conf import settings
|
from compressor.conf import settings
|
||||||
from compressor.exceptions import OfflineGenerationError
|
from compressor.exceptions import OfflineGenerationError
|
||||||
@@ -126,7 +127,45 @@ class OfflineGenerationTestCaseWithContext(OfflineTestCaseMixin, TestCase):
|
|||||||
|
|
||||||
class OfflineGenerationTestCaseErrors(OfflineTestCaseMixin, TestCase):
|
class OfflineGenerationTestCaseErrors(OfflineTestCaseMixin, TestCase):
|
||||||
templates_dir = "test_error_handling"
|
templates_dir = "test_error_handling"
|
||||||
expected_hash = "cd8870829421"
|
|
||||||
|
def test_offline(self):
|
||||||
|
count, result = CompressCommand().compress(log=self.log, verbosity=self.verbosity)
|
||||||
|
self.assertEqual(2, count)
|
||||||
|
self.assertEqual([
|
||||||
|
u'<script type="text/javascript" src="/media/CACHE/js/cd8870829421.js"></script>',
|
||||||
|
u'<script type="text/javascript" src="/media/CACHE/js/3872c9ae3f42.js"></script>',
|
||||||
|
], result)
|
||||||
|
|
||||||
|
|
||||||
|
class OfflineGenerationTestCaseWithError(OfflineTestCaseMixin, TestCase):
|
||||||
|
templates_dir = 'test_error_handling'
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
self._old_compress_precompilers = settings.COMPRESS_PRECOMPILERS
|
||||||
|
settings.COMPRESS_PRECOMPILERS = (('text/coffeescript', 'non-existing-binary'),)
|
||||||
|
super(OfflineGenerationTestCaseWithError, self).setUp()
|
||||||
|
|
||||||
|
def test_offline(self):
|
||||||
|
"""
|
||||||
|
Test that a CommandError is raised with DEBUG being False as well as
|
||||||
|
True, as otherwise errors in configuration will never show in
|
||||||
|
production.
|
||||||
|
"""
|
||||||
|
self._old_debug = settings.DEBUG
|
||||||
|
|
||||||
|
try:
|
||||||
|
settings.DEBUG = True
|
||||||
|
self.assertRaises(CommandError, CompressCommand().compress)
|
||||||
|
|
||||||
|
settings.DEBUG = False
|
||||||
|
self.assertRaises(CommandError, CompressCommand().compress)
|
||||||
|
|
||||||
|
finally:
|
||||||
|
settings.DEBUG = self._old_debug
|
||||||
|
|
||||||
|
def tearDown(self):
|
||||||
|
settings.COMPRESS_PRECOMPILERS = self._old_compress_precompilers
|
||||||
|
super(OfflineGenerationTestCaseWithError, self).tearDown()
|
||||||
|
|
||||||
|
|
||||||
class OfflineGenerationTestCase(OfflineTestCaseMixin, TestCase):
|
class OfflineGenerationTestCase(OfflineTestCaseMixin, TestCase):
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{% load compress %}
|
||||||
|
|
||||||
|
{% compress js %}
|
||||||
|
<script type="text/coffeescript" charset="utf-8">
|
||||||
|
a = 1
|
||||||
|
</script>
|
||||||
|
{% endcompress %}
|
||||||
Reference in New Issue
Block a user