package main import ( "bytes" "errors" "testing" "github.com/spf13/cobra" ) func TestRootCommandSuppressesCobraErrorAndUsage(t *testing.T) { cmd := newRootCommand() var output bytes.Buffer cmd.SetOut(&output) cmd.SetErr(&output) cmd.AddCommand(&cobra.Command{ Use: "probe", RunE: func(*cobra.Command, []string) error { return errors.New("probe failed") }, }) cmd.SetArgs([]string{"probe"}) err := cmd.Execute() if err == nil { t.Fatal("Execute() expected error, got nil") } if output.Len() != 0 { t.Errorf("Cobra output = %q, want no duplicate error or usage", output.String()) } }