Storage: fix delete folder (#52860)

This commit is contained in:
Artur Wierzbicki 2022-07-28 13:27:26 +04:00 committed by GitHub
parent 8d6d5f2fdc
commit 9e841ef21d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 7 deletions

View File

@ -331,7 +331,7 @@ func (s *standardStorageService) DeleteFolder(ctx context.Context, user *models.
if storagePath == "" {
storagePath = filestorage.Delimiter
}
return root.Store().DeleteFolder(ctx, storagePath, &filestorage.DeleteFolderOptions{Force: true, AccessFilter: guardian.getPathFilter(ActionFilesDelete)})
return root.Store().DeleteFolder(ctx, storagePath, &filestorage.DeleteFolderOptions{Force: cmd.Force, AccessFilter: guardian.getPathFilter(ActionFilesDelete)})
}
func (s *standardStorageService) CreateFolder(ctx context.Context, user *models.SignedInUser, cmd *CreateFolderCmd) error {

View File

@ -176,14 +176,26 @@ func TestShouldDelegateFolderCreation(t *testing.T) {
func TestShouldDelegateFolderDeletion(t *testing.T) {
service, mockStorage, storageName := setupUploadStore(t, nil)
cmds := []*DeleteFolderCmd{
{
Path: storageName,
Force: false,
},
{
Path: storageName,
Force: true,
}}
mockStorage.On("DeleteFolder", mock.Anything, "/", mock.Anything).Return(nil)
ctx := context.Background()
err := service.DeleteFolder(context.Background(), dummyUser, &DeleteFolderCmd{
Path: storageName,
Force: true,
})
require.NoError(t, err)
for _, cmd := range cmds {
mockStorage.On("DeleteFolder", ctx, "/", &filestorage.DeleteFolderOptions{
Force: cmd.Force,
AccessFilter: allowAllPathFilter,
}).Once().Return(nil)
err := service.DeleteFolder(ctx, dummyUser, cmd)
require.NoError(t, err)
}
}
func TestShouldUploadSvg(t *testing.T) {