diff --git a/pkg/proc/delete_handler.go b/pkg/proc/delete_handler.go index c2122ad..18e3aba 100644 --- a/pkg/proc/delete_handler.go +++ b/pkg/proc/delete_handler.go @@ -171,13 +171,8 @@ func (dh *BasicGarbageMgr) ListDelete2Files(bucket string, msg message.Delete2Me filesToDelete := make([]*object.ObjectInfo, 0) for i := range objectMetas { - filename := objectMetas[i].Path - ylogger.Zero.Debug().Str("name", filename).Msg("lookup chunk") - if !strings.HasPrefix(filename, msg.Prefix) { - continue - } ylogger.Zero.Debug().Str("file", objectMetas[i].Path). - Str("has prefix so will be deleted", msg.Prefix) + Str("will be deleted", msg.Prefix) filesToDelete = append(filesToDelete, objectMetas[i]) diff --git a/pkg/proc/delete_handler_test.go b/pkg/proc/delete_handler_test.go index 088b012..fd4ccb7 100644 --- a/pkg/proc/delete_handler_test.go +++ b/pkg/proc/delete_handler_test.go @@ -86,3 +86,35 @@ func TestTrashPathConversion(t *testing.T) { assert.Equal(t, tc.Path, resP2) } } + +func TestListDelete2Files(t *testing.T) { + ctrl := gomock.NewController(t) + + msg := message.Delete2Message{ + Prefix: "trash", + Garbage: true, + Confirm: true, + } + + filesInStorage := []*object.ObjectInfo{ + {Path: "1663_16530_not-deleted_18002_"}, + {Path: "1663_16530_deleted-after-backup_18002_"}, + {Path: "1663_16530_deleted-when-backup-start_18002_"}, + {Path: "1663_16530_deleted-before-backup_18002_"}, + {Path: "some_trash"}, + } + storage := mock.NewMockStorageInteractor(ctrl) + storage.EXPECT().ListBucketPath("", msg.Prefix, true).Return(filesInStorage, nil) + + handler := proc.BasicGarbageMgr{ + StorageInterractor: storage, + DbInterractor: nil, + BackupInterractor: nil, + Cnf: &config.Vacuum{CheckBackup: true}, + } + + actualFilesToDelete, err := handler.ListDelete2Files("", msg) + assert.NoError(t, err) + assert.Equal(t, len(filesInStorage), len(actualFilesToDelete)) + assert.Equal(t, filesInStorage, actualFilesToDelete) +}