From b1821fbad5518c8ae56b7b5c2b1ea2afbbd25c7a Mon Sep 17 00:00:00 2001 From: Timothy McCurrach Date: Wed, 20 Jan 2021 16:12:24 +0000 Subject: Fixed #32360 -- Added system check for FILE_UPLOAD_TEMP_DIR setting. --- tests/check_framework/test_files.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 tests/check_framework/test_files.py (limited to 'tests') diff --git a/tests/check_framework/test_files.py b/tests/check_framework/test_files.py new file mode 100644 index 0000000000..6b30220e37 --- /dev/null +++ b/tests/check_framework/test_files.py @@ -0,0 +1,32 @@ +from pathlib import Path + +from django.core.checks import Error +from django.core.checks.files import check_setting_file_upload_temp_dir +from django.test import SimpleTestCase + + +class FilesCheckTests(SimpleTestCase): + def test_file_upload_temp_dir(self): + tests = [ + None, + '', + Path.cwd(), + str(Path.cwd()), + ] + for setting in tests: + with self.subTest(setting), self.settings(FILE_UPLOAD_TEMP_DIR=setting): + self.assertEqual(check_setting_file_upload_temp_dir(None), []) + + def test_file_upload_temp_dir_nonexistent(self): + for setting in ['nonexistent', Path('nonexistent')]: + with self.subTest(setting), self.settings(FILE_UPLOAD_TEMP_DIR=setting): + self.assertEqual( + check_setting_file_upload_temp_dir(None), + [ + Error( + "The FILE_UPLOAD_TEMP_DIR setting refers to the " + "nonexistent directory 'nonexistent'.", + id='files.E001', + ), + ], + ) -- cgit v1.3