Used temporary directory in FileFieldTests.test_pickle().
Using the current directory caused a PermissionError.
@@ -106,6 +106,8 @@ class FileFieldTests(TestCase):
self.assertTrue(os.path.exists(os.path.join(tmp_dir, 'unused', 'foo.txt')))
def test_pickle(self):
+ with tempfile.TemporaryDirectory() as tmp_dir:
+ with override_settings(MEDIA_ROOT=Path(tmp_dir)):
with open(__file__, 'rb') as fp:
file1 = File(fp, name='test_file.py')
document = Document(myfile='test_file.py')
@@ -114,7 +116,10 @@ class FileFieldTests(TestCase):
dump = pickle.dumps(document)
loaded_document = pickle.loads(dump)
self.assertEqual(document.myfile, loaded_document.myfile)
- self.assertEqual(document.myfile.url, loaded_document.myfile.url)
+ self.assertEqual(
+ document.myfile.url,
+ loaded_document.myfile.url,
+ )
self.assertEqual(
document.myfile.storage,
loaded_document.myfile.storage,
@@ -123,14 +128,22 @@ class FileFieldTests(TestCase):
document.myfile.instance,
loaded_document.myfile.instance,
)
- self.assertEqual(document.myfile.field, loaded_document.myfile.field)
-
+ self.assertEqual(
+ document.myfile.field,
+ loaded_document.myfile.field,
+ )
myfile_dump = pickle.dumps(document.myfile)
loaded_myfile = pickle.loads(myfile_dump)
self.assertEqual(document.myfile, loaded_myfile)
self.assertEqual(document.myfile.url, loaded_myfile.url)
- self.assertEqual(document.myfile.storage, loaded_myfile.storage)
- self.assertEqual(document.myfile.instance, loaded_myfile.instance)
+ self.assertEqual(
+ document.myfile.storage,
+ loaded_myfile.storage,
+ )
+ self.assertEqual(
+ document.myfile.instance,
+ loaded_myfile.instance,
+ )
self.assertEqual(document.myfile.field, loaded_myfile.field)
finally:
document.myfile.delete()
