main
Madhur batra 4 years ago
commit e73d6e133d

@ -897,6 +897,39 @@ func TestApp_SetStdin(t *testing.T) {
} }
} }
func TestApp_SetStdin_Subcommand(t *testing.T) {
buf := make([]byte, 12)
app := &App{
Name: "test",
Reader: strings.NewReader("Hello World!"),
Commands: []*Command{
{
Name: "command",
Subcommands: []*Command{
{
Name: "subcommand",
Action: func(c *Context) error {
_, err := c.App.Reader.Read(buf)
return err
},
},
},
},
},
}
err := app.Run([]string{"test", "command", "subcommand"})
if err != nil {
t.Fatalf("Run error: %s", err)
}
if string(buf) != "Hello World!" {
t.Error("App did not read input from desired reader.")
}
}
func TestApp_SetStdout(t *testing.T) { func TestApp_SetStdout(t *testing.T) {
var w bytes.Buffer var w bytes.Buffer

@ -243,6 +243,7 @@ func (c *Command) startApp(ctx *Context) error {
app.Version = ctx.App.Version app.Version = ctx.App.Version
app.HideVersion = true app.HideVersion = true
app.Compiled = ctx.App.Compiled app.Compiled = ctx.App.Compiled
app.Reader = ctx.App.Reader
app.Writer = ctx.App.Writer app.Writer = ctx.App.Writer
app.ErrWriter = ctx.App.ErrWriter app.ErrWriter = ctx.App.ErrWriter
app.ExitErrHandler = ctx.App.ExitErrHandler app.ExitErrHandler = ctx.App.ExitErrHandler

@ -612,7 +612,7 @@ given sources.
Here is a more complete sample of a command using YAML support: Here is a more complete sample of a command using YAML support:
<!-- { <!-- {
"args": ["test-cmd", "&#45;&#45;help"], "args": ["&#45;&#45;help"],
"output": "&#45&#45;test value.*default: 0" "output": "&#45&#45;test value.*default: 0"
} --> } -->
``` go ``` go

@ -627,7 +627,7 @@ given sources.
Here is a more complete sample of a command using YAML support: Here is a more complete sample of a command using YAML support:
<!-- { <!-- {
"args": ["test-cmd", "&#45;&#45;help"], "args": ["&#45;&#45;help"],
"output": "&#45&#45;test value.*default: 0" "output": "&#45&#45;test value.*default: 0"
} --> } -->
``` go ``` go

Loading…
Cancel
Save