Commit 7487c740 authored by Jannis Leidel's avatar Jannis Leidel
Browse files

Fixed #17865 -- Strip whitespaces from the paths when using the CachedStaticFilesStorage backend.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@17696 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent d1742165
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ class CachedFilesMixin(object):

    def hashed_name(self, name, content=None):
        parsed_name = urlsplit(unquote(name))
        clean_name = parsed_name.path
        clean_name = parsed_name.path.strip()
        if content is None:
            if not self.exists(clean_name):
                raise ValueError("The file '%s' could not be found with %r." %
+3 −0
Original line number Diff line number Diff line
@import url("..//cached///styles.css");
body {
    background: #d3d6d8 url(img/relative.png );
}
+3 −1
Original line number Diff line number Diff line
@@ -427,11 +427,13 @@ class TestCollectionCachedStorage(BaseCollectionTestCase,

    def test_template_tag_denorm(self):
        relpath = self.cached_file_path("cached/denorm.css")
        self.assertEqual(relpath, "cached/denorm.363de96e9b4b.css")
        self.assertEqual(relpath, "cached/denorm.c5bd139ad821.css")
        with storage.staticfiles_storage.open(relpath) as relfile:
            content = relfile.read()
            self.assertNotIn("..//cached///styles.css", content)
            self.assertIn("/static/cached/styles.93b1147e8552.css", content)
            self.assertNotIn("url(img/relative.png )", content)
            self.assertIn("/static/cached/img/relative.acae32e4532b.png", content)

    def test_template_tag_relative(self):
        relpath = self.cached_file_path("cached/relative.css")