MCPcopy Create free account
hub / github.com/dropbox/dbxcli / TestRmJSONFolderOmitsFileFields

Function TestRmJSONFolderOmitsFileFields

cmd/rm_test.go:493–528  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

491}
492
493func TestRmJSONFolderOmitsFileFields(t *testing.T) {
494 cmd, stdout := testRmCmd(t)
495 setRmOutputJSON(t, cmd)
496 setRmFlag(t, cmd, "recursive")
497 folder := rmFolderMetadata("/Folder")
498
499 mock := &mockFilesClient{
500 getMetadataFn: func(arg *files.GetMetadataArg) (files.IsMetadata, error) {
501 return folder, nil
502 },
503 deleteV2Fn: func(arg *files.DeleteArg) (*files.DeleteResult, error) {
504 return files.NewDeleteResult(folder), nil
505 },
506 }
507 stubFilesClient(t, mock)
508
509 if err := rm(cmd, []string{"/Folder"}); err != nil {
510 t.Fatalf("rm error: %v", err)
511 }
512
513 output := stdout.String()
514 if strings.Contains(output, `"rev"`) || strings.Contains(output, `"size"`) {
515 t.Fatalf("folder JSON output = %s, want no file-only fields", output)
516 }
517 got := decodeRemoveOutputString(t, output)
518 if len(got.Results) != 1 {
519 t.Fatalf("results len = %d, want 1", len(got.Results))
520 }
521 result := got.Results[0]
522 if result.Result.Type != "folder" {
523 t.Fatalf("result type = %q, want folder", result.Result.Type)
524 }
525 if !result.Input.Recursive {
526 t.Fatalf("recursive = false, want true")
527 }
528}
529
530func TestRmJSONPermanentUsesValidatedMetadata(t *testing.T) {
531 cmd, stdout := testRmCmd(t)

Callers

nothing calls this directly

Calls 7

testRmCmdFunction · 0.85
setRmOutputJSONFunction · 0.85
setRmFlagFunction · 0.85
rmFolderMetadataFunction · 0.85
stubFilesClientFunction · 0.85
rmFunction · 0.85
decodeRemoveOutputStringFunction · 0.85

Tested by

no test coverage detected