(t *testing.T)
| 289 | } |
| 290 | |
| 291 | func TestRmPermanentRecursiveDeletesNonEmptyFolder(t *testing.T) { |
| 292 | cmd, _ := testRmCmd(t) |
| 293 | setRmFlag(t, cmd, "permanent") |
| 294 | setRmFlag(t, cmd, "recursive") |
| 295 | folder := rmFolderMetadata("/folder") |
| 296 | var permanentlyDeleted []string |
| 297 | |
| 298 | mock := &mockFilesClient{ |
| 299 | getMetadataFn: func(arg *files.GetMetadataArg) (files.IsMetadata, error) { |
| 300 | return folder, nil |
| 301 | }, |
| 302 | listFolderFn: func(arg *files.ListFolderArg) (*files.ListFolderResult, error) { |
| 303 | t.Fatalf("ListFolder called when --recursive already allows folder removal: %v", arg) |
| 304 | return nil, nil |
| 305 | }, |
| 306 | deleteV2Fn: func(arg *files.DeleteArg) (*files.DeleteResult, error) { |
| 307 | t.Fatalf("DeleteV2 called for permanent delete: %v", arg) |
| 308 | return nil, nil |
| 309 | }, |
| 310 | permanentlyDeleteFn: func(arg *files.DeleteArg) error { |
| 311 | permanentlyDeleted = append(permanentlyDeleted, arg.Path) |
| 312 | return nil |
| 313 | }, |
| 314 | } |
| 315 | stubFilesClient(t, mock) |
| 316 | |
| 317 | if err := rm(cmd, []string{"/folder"}); err != nil { |
| 318 | t.Fatalf("rm error: %v", err) |
| 319 | } |
| 320 | if len(permanentlyDeleted) != 1 || permanentlyDeleted[0] != "/folder" { |
| 321 | t.Fatalf("permanentlyDeleted = %v, want [/folder]", permanentlyDeleted) |
| 322 | } |
| 323 | } |
| 324 | |
| 325 | func TestRmValidatesAllTargetsBeforeDeleting(t *testing.T) { |
| 326 | cmd, _ := testRmCmd(t) |
nothing calls this directly
no test coverage detected