github.com/maresnic/mr-kong@v1.0.0/global_test.go (about) 1 package kong 2 3 import ( 4 "os" 5 "testing" 6 7 "github.com/alecthomas/assert/v2" 8 ) 9 10 func TestParseHandlingBadBuild(t *testing.T) { 11 var cli struct { 12 Enabled bool `kong:"fail='"` 13 } 14 15 args := os.Args 16 defer func() { 17 os.Args = args 18 }() 19 20 os.Args = []string{os.Args[0], "hi"} 21 22 defer func() { 23 if r := recover(); r != nil { 24 assert.Equal(t, "fail=' is not quoted properly", r.(error).Error()) //nolint 25 } 26 }() 27 28 Parse(&cli, Exit(func(_ int) { panic("exiting") })) 29 30 t.Fatal("we were expecting a panic") 31 }