Use the actually handled content for filepath creation instead of the compress block content.

This commit is contained in:
Jannis Leidel
2011-04-14 12:42:26 +02:00
parent 06ff9ef80f
commit b40a8f1402
3 changed files with 17 additions and 17 deletions

2
.gitignore vendored
View File

@@ -1,7 +1,7 @@
build build
compressor/tests/media/CACHE compressor/tests/media/CACHE
compressor/tests/media/custom compressor/tests/media/custom
compressor/tests/media/js/dc78a3f5af20.js compressor/tests/media/js/3f33b9146e12.js
dist dist
MANIFEST MANIFEST
*.pyc *.pyc

View File

@@ -190,7 +190,7 @@ class Compressor(object):
The output method that saves the content to a file and renders The output method that saves the content to a file and renders
the appropriate template with the file's URL. the appropriate template with the file's URL.
""" """
new_filepath = self.filepath(self.content) new_filepath = self.filepath(content)
if not self.storage.exists(new_filepath) or forced: if not self.storage.exists(new_filepath) or forced:
self.storage.save(new_filepath, ContentFile(content)) self.storage.save(new_filepath, ContentFile(content))
url = self.storage.url(new_filepath) url = self.storage.url(new_filepath)

View File

@@ -76,7 +76,7 @@ class CompressorTestCase(TestCase):
self.assertEqual('666f3aa8eacd', self.css_node.hash(self.css)) self.assertEqual('666f3aa8eacd', self.css_node.hash(self.css))
def test_css_return_if_on(self): def test_css_return_if_on(self):
output = u'<link rel="stylesheet" href="/media/CACHE/css/277b26db9a98.css" type="text/css">' output = u'<link rel="stylesheet" href="/media/CACHE/css/f7c661b7a124.css" type="text/css">'
self.assertEqual(output, self.css_node.output().strip()) self.assertEqual(output, self.css_node.output().strip())
def test_js_split(self): def test_js_split(self):
@@ -111,20 +111,20 @@ class CompressorTestCase(TestCase):
settings.COMPRESS_PRECOMPILERS = precompilers settings.COMPRESS_PRECOMPILERS = precompilers
def test_js_return_if_on(self): def test_js_return_if_on(self):
output = u'<script type="text/javascript" src="/media/CACHE/js/dc78a3f5af20.js" charset="utf-8"></script>' output = u'<script type="text/javascript" src="/media/CACHE/js/3f33b9146e12.js" charset="utf-8"></script>'
self.assertEqual(output, self.js_node.output()) self.assertEqual(output, self.js_node.output())
def test_custom_output_dir(self): def test_custom_output_dir(self):
try: try:
old_output_dir = settings.COMPRESS_OUTPUT_DIR old_output_dir = settings.COMPRESS_OUTPUT_DIR
settings.COMPRESS_OUTPUT_DIR = 'custom' settings.COMPRESS_OUTPUT_DIR = 'custom'
output = u'<script type="text/javascript" src="/media/custom/js/dc78a3f5af20.js" charset="utf-8"></script>' output = u'<script type="text/javascript" src="/media/custom/js/3f33b9146e12.js" charset="utf-8"></script>'
self.assertEqual(output, JsCompressor(self.js).output()) self.assertEqual(output, JsCompressor(self.js).output())
settings.COMPRESS_OUTPUT_DIR = '' settings.COMPRESS_OUTPUT_DIR = ''
output = u'<script type="text/javascript" src="/media/js/dc78a3f5af20.js" charset="utf-8"></script>' output = u'<script type="text/javascript" src="/media/js/3f33b9146e12.js" charset="utf-8"></script>'
self.assertEqual(output, JsCompressor(self.js).output()) self.assertEqual(output, JsCompressor(self.js).output())
settings.COMPRESS_OUTPUT_DIR = '/custom/nested/' settings.COMPRESS_OUTPUT_DIR = '/custom/nested/'
output = u'<script type="text/javascript" src="/media/custom/nested/js/dc78a3f5af20.js" charset="utf-8"></script>' output = u'<script type="text/javascript" src="/media/custom/nested/js/3f33b9146e12.js" charset="utf-8"></script>'
self.assertEqual(output, JsCompressor(self.js).output()) self.assertEqual(output, JsCompressor(self.js).output())
finally: finally:
settings.COMPRESS_OUTPUT_DIR = old_output_dir settings.COMPRESS_OUTPUT_DIR = old_output_dir
@@ -291,7 +291,7 @@ class TemplatetagTestCase(TestCase):
{% endcompress %} {% endcompress %}
""" """
context = { 'MEDIA_URL': settings.COMPRESS_URL } context = { 'MEDIA_URL': settings.COMPRESS_URL }
out = u'<link rel="stylesheet" href="/media/CACHE/css/277b26db9a98.css" type="text/css">' out = u'<link rel="stylesheet" href="/media/CACHE/css/f7c661b7a124.css" type="text/css">'
self.assertEqual(out, render(template, context)) self.assertEqual(out, render(template, context))
def test_nonascii_css_tag(self): def test_nonascii_css_tag(self):
@@ -301,7 +301,7 @@ class TemplatetagTestCase(TestCase):
{% endcompress %} {% endcompress %}
""" """
context = { 'MEDIA_URL': settings.COMPRESS_URL } context = { 'MEDIA_URL': settings.COMPRESS_URL }
out = '<link rel="stylesheet" href="/media/CACHE/css/14e62fd8dc94.css" type="text/css">' out = '<link rel="stylesheet" href="/media/CACHE/css/1c1c0855907b.css" type="text/css">'
self.assertEqual(out, render(template, context)) self.assertEqual(out, render(template, context))
def test_js_tag(self): def test_js_tag(self):
@@ -311,7 +311,7 @@ class TemplatetagTestCase(TestCase):
{% endcompress %} {% endcompress %}
""" """
context = { 'MEDIA_URL': settings.COMPRESS_URL } context = { 'MEDIA_URL': settings.COMPRESS_URL }
out = u'<script type="text/javascript" src="/media/CACHE/js/dc78a3f5af20.js" charset="utf-8"></script>' out = u'<script type="text/javascript" src="/media/CACHE/js/3f33b9146e12.js" charset="utf-8"></script>'
self.assertEqual(out, render(template, context)) self.assertEqual(out, render(template, context))
def test_nonascii_js_tag(self): def test_nonascii_js_tag(self):
@@ -321,7 +321,7 @@ class TemplatetagTestCase(TestCase):
{% endcompress %} {% endcompress %}
""" """
context = { 'MEDIA_URL': settings.COMPRESS_URL } context = { 'MEDIA_URL': settings.COMPRESS_URL }
out = u'<script type="text/javascript" src="/media/CACHE/js/52e783c7eb25.js" charset="utf-8"></script>' out = u'<script type="text/javascript" src="/media/CACHE/js/5d5c0e1cb25f.js" charset="utf-8"></script>'
self.assertEqual(out, render(template, context)) self.assertEqual(out, render(template, context))
def test_nonascii_latin1_js_tag(self): def test_nonascii_latin1_js_tag(self):
@@ -331,7 +331,7 @@ class TemplatetagTestCase(TestCase):
{% endcompress %} {% endcompress %}
""" """
context = { 'MEDIA_URL': settings.COMPRESS_URL } context = { 'MEDIA_URL': settings.COMPRESS_URL }
out = u'<script type="text/javascript" src="/media/CACHE/js/e33dbf2e2457.js" charset="utf-8"></script>' out = u'<script type="text/javascript" src="/media/CACHE/js/40a8e9ffb476.js" charset="utf-8"></script>'
self.assertEqual(out, render(template, context)) self.assertEqual(out, render(template, context))
def test_compress_tag_with_illegal_arguments(self): def test_compress_tag_with_illegal_arguments(self):
@@ -370,7 +370,7 @@ class StorageTestCase(TestCase):
{% endcompress %} {% endcompress %}
""" """
context = { 'MEDIA_URL': settings.COMPRESS_URL } context = { 'MEDIA_URL': settings.COMPRESS_URL }
out = u'<link rel="stylesheet" href="/media/CACHE/css/277b26db9a98.css.gz" type="text/css">' out = u'<link rel="stylesheet" href="/media/CACHE/css/5b231a62e9a6.css.gz" type="text/css">'
self.assertEqual(out, render(template, context)) self.assertEqual(out, render(template, context))
@@ -403,8 +403,8 @@ class OfflineGenerationTestCase(TestCase):
count, result = CompressCommand().compress() count, result = CompressCommand().compress()
self.assertEqual(2, count) self.assertEqual(2, count)
self.assertEqual([ self.assertEqual([
u'<link rel="stylesheet" href="/media/CACHE/css/4208e0ded309.css" type="text/css">\n', u'<link rel="stylesheet" href="/media/CACHE/css/a55e1cf95000.css" type="text/css">\n',
u'<script type="text/javascript" src="/media/CACHE/js/f57529d83f3a.js" charset="utf-8"></script>', u'<script type="text/javascript" src="/media/CACHE/js/bf53fa5b13e2.js" charset="utf-8"></script>',
], result) ], result)
def test_offline_with_context(self): def test_offline_with_context(self):
@@ -415,7 +415,7 @@ class OfflineGenerationTestCase(TestCase):
count, result = CompressCommand().compress() count, result = CompressCommand().compress()
self.assertEqual(2, count) self.assertEqual(2, count)
self.assertEqual([ self.assertEqual([
u'<link rel="stylesheet" href="/media/CACHE/css/777d7c22e67c.css" type="text/css">\n', u'<link rel="stylesheet" href="/media/CACHE/css/8a2405e029de.css" type="text/css">\n',
u'<script type="text/javascript" src="/media/CACHE/js/f57529d83f3a.js" charset="utf-8"></script>', u'<script type="text/javascript" src="/media/CACHE/js/bf53fa5b13e2.js" charset="utf-8"></script>',
], result) ], result)
settings.COMPRESS_OFFLINE_CONTEXT = self._old_offline_context settings.COMPRESS_OFFLINE_CONTEXT = self._old_offline_context