diff options
| author | Carles Pina i Estany <carles@pina.cat> | 2020-11-08 14:57:51 +0000 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-11-11 11:04:52 +0100 |
| commit | 721c95ba0b67eb46422dcf05a4274960e49c8894 (patch) | |
| tree | 156ccc275cd05f67fa101c511340c87a9138982c /tests/check_framework | |
| parent | c0fc5ba3808becefcdc8b878f133fd2a864a072d (diff) | |
Fixed #32180 -- Added system check for file system caches absolute location.
Diffstat (limited to 'tests/check_framework')
| -rw-r--r-- | tests/check_framework/test_caches.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/check_framework/test_caches.py b/tests/check_framework/test_caches.py index 002528d1f5..a3ddfd64e7 100644 --- a/tests/check_framework/test_caches.py +++ b/tests/check_framework/test_caches.py @@ -3,6 +3,7 @@ import pathlib from django.core.checks import Warning from django.core.checks.caches import ( E001, check_cache_location_not_exposed, check_default_cache_is_configured, + check_file_based_cache_is_absolute, ) from django.test import SimpleTestCase from django.test.utils import override_settings @@ -89,3 +90,29 @@ class CheckCacheLocationTest(SimpleTestCase): settings = self.get_settings(setting, root / 'cache', root / 'other') with self.subTest(setting=setting), self.settings(**settings): self.assertEqual(check_cache_location_not_exposed(None), []) + + +class CheckCacheAbsolutePath(SimpleTestCase): + def test_absolute_path(self): + with self.settings(CACHES={ + 'default': { + 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', + 'LOCATION': pathlib.Path.cwd() / 'cache', + }, + }): + self.assertEqual(check_file_based_cache_is_absolute(None), []) + + def test_relative_path(self): + with self.settings(CACHES={ + 'default': { + 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', + 'LOCATION': 'cache', + }, + }): + self.assertEqual(check_file_based_cache_is_absolute(None), [ + Warning( + "Your 'default' cache LOCATION path is relative. Use an " + "absolute path instead.", + id='caches.W003', + ), + ]) |
