. "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = Describe("SSHOptions", func() { var ( opts *options.SSHOptions args []string parseError error fc flags.FlagContext ) Describe("Parse", func() { BeforeEach(func() { fc = flags.New() fc.NewStringSliceFlag("L", "", "") fc.NewStringSliceFlag("command", "c", "") fc.NewIntFlag("app-instance-index", "i", "") fc.NewBoolFlag("skip-host-validation", "k", "") fc.NewBoolFlag("skip-remote-execution", "N", "") fc.NewBoolFlag("request-pseudo-tty", "t", "") fc.NewBoolFlag("force-pseudo-tty", "tt", "") fc.NewBoolFlag("disable-pseudo-tty", "T", "") args = []string{} parseError = nil }) JustBeforeEach(func() { err := fc.Parse(args...) Expect(err).NotTo(HaveOccurred())
fc.NewFloat64FlagWithDefault("i", "i2", "setting new flag", 5.5) fc.Parse() Ω(fc.IsSet("i")).To(BeTrue()) Ω(fc.IsSet("i2")).To(BeTrue()) Ω(fc.Float64("i")).To(Equal(5.5)) Ω(fc.Float64("i2")).To(Equal(5.5)) }) }) Describe("NewStringSliceFlag()", func() { It("init the flag context with a new StringSlice flagset", func() { fc.Parse("-s", "5", "-s", "6") Ω(fc.IsSet("s")).To(BeFalse()) Ω(fc.StringSlice("s")).To(Equal([]string{})) fc.NewStringSliceFlag("s", "s2", "setting new StringSlice flag") fc.Parse("-s", "5", "-s", "6") Ω(fc.IsSet("s")).To(BeTrue()) Ω(fc.IsSet("s2")).To(BeTrue()) Ω(fc.StringSlice("s")).To(Equal([]string{"5", "6"})) Ω(fc.StringSlice("s2")).To(Equal([]string{"5", "6"})) }) }) Describe("NewStringSliceFlagWithDefault()", func() { It("init the flag context with a new StringSlice flagset with default value", func() { fc.Parse() Ω(fc.IsSet("s")).To(BeFalse()) Ω(fc.StringSlice("s")).To(Equal([]string{})) fc.NewStringSliceFlagWithDefault("s", "s2", "setting new StringSlice flag", []string{"5", "6", "7"})