Allow "bare" tags and moved tag tests into tag_test.go. Fixes #19
This commit is contained in:
committed by
Alec Thomas
parent
fdc7230e22
commit
ed123d1c06
@@ -246,64 +246,6 @@ func TestMixedRequiredArgs(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestDefaultValueForOptionalArg(t *testing.T) {
|
||||
var cli struct {
|
||||
Arg string `kong:"arg,optional,default='👌'"`
|
||||
}
|
||||
p := mustNew(t, &cli)
|
||||
_, err := p.Parse(nil)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, "👌", cli.Arg)
|
||||
}
|
||||
|
||||
func TestNoValueInTag(t *testing.T) {
|
||||
var cli struct {
|
||||
Empty1 string `kong:"default"`
|
||||
Empty2 string `kong:"default="`
|
||||
}
|
||||
p := mustNew(t, &cli)
|
||||
_, err := p.Parse(nil)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, "", cli.Empty1)
|
||||
require.Equal(t, "", cli.Empty2)
|
||||
}
|
||||
|
||||
func TestCommaInQuotes(t *testing.T) {
|
||||
var cli struct {
|
||||
Numbers string `kong:"default='1,2'"`
|
||||
}
|
||||
p := mustNew(t, &cli)
|
||||
_, err := p.Parse(nil)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, "1,2", cli.Numbers)
|
||||
}
|
||||
|
||||
func TestBadString(t *testing.T) {
|
||||
var cli struct {
|
||||
Numbers string `kong:"default='yay'n"`
|
||||
}
|
||||
_, err := New(&cli)
|
||||
require.Error(t, err)
|
||||
}
|
||||
|
||||
func TestNoQuoteEnd(t *testing.T) {
|
||||
var cli struct {
|
||||
Numbers string `kong:"default='yay"`
|
||||
}
|
||||
_, err := New(&cli)
|
||||
require.Error(t, err)
|
||||
}
|
||||
|
||||
func TestEscapedQuote(t *testing.T) {
|
||||
var cli struct {
|
||||
DoYouKnow string `kong:"default='i don\\'t know'"`
|
||||
}
|
||||
p := mustNew(t, &cli)
|
||||
_, err := p.Parse(nil)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, "i don't know", cli.DoYouKnow)
|
||||
}
|
||||
|
||||
func TestInvalidDefaultErrors(t *testing.T) {
|
||||
var cli struct {
|
||||
Flag int `kong:"default='foo'"`
|
||||
|
||||
Reference in New Issue
Block a user