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', ), ], )