Refs #104 - Merged work of @benesch and @zerc.

This commit is contained in:
Benoît Bryon 2015-07-20 18:12:44 +02:00
commit 150e50653f

View file

@ -1,7 +1,9 @@
import datetime
import unittest
from django.core.files.base import ContentFile
from django.core.urlresolvers import reverse
from django.http.response import HttpResponseNotModified
import django.test
from django_downloadview import assert_download_response, temporary_media_root
@ -31,6 +33,32 @@ class StaticPathTestCase(django.test.TestCase):
basename='1.txt',
mime_type='text/plain')
@temporary_media_root()
def test_not_modified_download_response(self):
"""'storage:static_path' sends not modified response if unmodified."""
setup_file('1.txt')
url = reverse('storage:static_path', kwargs={'path': '1.txt'})
response = self.client.get(
url,
HTTP_IF_MODIFIED_SINCE='Sat, 29 Oct {year} 19:43:31 GMT'.format(
year=datetime.date.today().year + 4)
)
self.assertTrue(isinstance(response, HttpResponseNotModified))
@temporary_media_root()
def test_modified_since_download_response(self):
"""'storage:static_path' streams file if modified."""
setup_file('1.txt')
url = reverse('storage:static_path', kwargs={'path': '1.txt'})
response = self.client.get(
url,
HTTP_IF_MODIFIED_SINCE='Sat, 29 Oct 1980 19:43:31 GMT')
assert_download_response(self,
response,
content=file_content,
basename='1.txt',
mime_type='text/plain')
class DynamicPathIntegrationTestCase(django.test.TestCase):
"""Integration tests around ``storage:dynamic_path`` URL."""