Loading django/core/files/storage.py +1 −0 Original line number Diff line number Diff line Loading @@ -231,6 +231,7 @@ class FileSystemStorage(Storage): return name def delete(self, name): assert name, "The name argument is not allowed to be empty." name = self.path(name) # If the file exists, delete it from the filesystem. # Note that there is a race between os.path.exists and os.remove: Loading tests/file_storage/tests.py +8 −0 Original line number Diff line number Diff line Loading @@ -364,6 +364,14 @@ class FileStorageTests(unittest.TestCase): with self.assertRaises(IOError): self.storage.save('error.file', f1) def test_delete_no_name(self): """ Calling delete with an empty name should not try to remove the base storage directory, but fail loudly (#20660). """ with self.assertRaises(AssertionError): self.storage.delete('') class CustomStorage(FileSystemStorage): def get_available_name(self, name): Loading Loading
django/core/files/storage.py +1 −0 Original line number Diff line number Diff line Loading @@ -231,6 +231,7 @@ class FileSystemStorage(Storage): return name def delete(self, name): assert name, "The name argument is not allowed to be empty." name = self.path(name) # If the file exists, delete it from the filesystem. # Note that there is a race between os.path.exists and os.remove: Loading
tests/file_storage/tests.py +8 −0 Original line number Diff line number Diff line Loading @@ -364,6 +364,14 @@ class FileStorageTests(unittest.TestCase): with self.assertRaises(IOError): self.storage.save('error.file', f1) def test_delete_no_name(self): """ Calling delete with an empty name should not try to remove the base storage directory, but fail loudly (#20660). """ with self.assertRaises(AssertionError): self.storage.delete('') class CustomStorage(FileSystemStorage): def get_available_name(self, name): Loading