Test for options.
This commit is contained in:
+4
-1
@@ -36,5 +36,8 @@ func HelpContext(context map[string]interface{}) Option {
|
|||||||
|
|
||||||
// Writers overrides the default writers. Useful for testing or interactive use.
|
// Writers overrides the default writers. Useful for testing or interactive use.
|
||||||
func Writers(stdout, stderr io.Writer) Option {
|
func Writers(stdout, stderr io.Writer) Option {
|
||||||
return func(k *Kong) { k.stdout = stdout }
|
return func(k *Kong) {
|
||||||
|
k.stdout = stdout
|
||||||
|
k.stderr = stderr
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package kong
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/stretchr/testify/require"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestOptions(t *testing.T) {
|
||||||
|
var cli struct{}
|
||||||
|
p, err := New(&cli, Name("name"), Description("description"), Writers(nil, nil), ExitFunction(nil))
|
||||||
|
require.NoError(t, err)
|
||||||
|
require.Equal(t, "name", p.Model.Name)
|
||||||
|
require.Equal(t, "description", p.Model.Help)
|
||||||
|
require.Nil(t, p.stdout)
|
||||||
|
require.Nil(t, p.stderr)
|
||||||
|
require.Nil(t, p.terminate)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user