summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2020-01-31 20:33:48 +0100
committerGitHub <noreply@github.com>2020-01-31 20:33:48 +0100
commit2e6dc72d834781a720f837817211c04980cce73d (patch)
tree2c73f5c82c6dc770fff750f4e153e75ed9c7e471
parentc1b24718e05ea474955777d7bc4d9d5634560cd5 (diff)
Used temporary directory in FileFieldTests.test_pickle().
Using the current directory caused a PermissionError.
-rw-r--r--tests/model_fields/test_filefield.py69
1 files changed, 41 insertions, 28 deletions
diff --git a/tests/model_fields/test_filefield.py b/tests/model_fields/test_filefield.py
index 67c08c984c..022121b883 100644
--- a/tests/model_fields/test_filefield.py
+++ b/tests/model_fields/test_filefield.py
@@ -106,31 +106,44 @@ class FileFieldTests(TestCase):
self.assertTrue(os.path.exists(os.path.join(tmp_dir, 'unused', 'foo.txt')))
def test_pickle(self):
- with open(__file__, 'rb') as fp:
- file1 = File(fp, name='test_file.py')
- document = Document(myfile='test_file.py')
- document.myfile.save('test_file.py', file1)
- try:
- 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.storage,
- loaded_document.myfile.storage,
- )
- self.assertEqual(
- document.myfile.instance,
- loaded_document.myfile.instance,
- )
- 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.field, loaded_myfile.field)
- finally:
- document.myfile.delete()
+ 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')
+ document.myfile.save('test_file.py', file1)
+ try:
+ 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.storage,
+ loaded_document.myfile.storage,
+ )
+ self.assertEqual(
+ document.myfile.instance,
+ loaded_document.myfile.instance,
+ )
+ 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.field, loaded_myfile.field)
+ finally:
+ document.myfile.delete()