) 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()) opts, parseError = options.NewSSHOptions(fc)
fc.NewBoolFlag("force", "f", "force process") fc.Parse("--force") Expect(fc.IsSet("force")).To(BeTrue()) Expect(fc.IsSet("f")).To(BeTrue()) Expect(fc.Bool("force")).To(BeTrue()) Expect(fc.Bool("f")).To(BeTrue()) }) }) Describe("NewIntFlag()", func() { It("init the flag context with a new int flagset", func() { fc.Parse("-i", "5") Expect(fc.IsSet("i")).To(BeFalse()) Expect(fc.Int("i")).To(Equal(0)) fc.NewIntFlag("i", "i2", "setting new int flag") fc.Parse("-i", "5") Expect(fc.IsSet("i")).To(BeTrue()) Expect(fc.IsSet("i2")).To(BeTrue()) Expect(fc.Int("i")).To(Equal(5)) Expect(fc.Int("i2")).To(Equal(5)) }) }) Describe("NewIntFlagWithDefault()", func() { It("init the flag context with a new int flagset with default value", func() { fc.Parse("-i", "5") Expect(fc.IsSet("i")).To(BeFalse()) Expect(fc.Int("i")).To(Equal(0)) fc.NewIntFlagWithDefault("i", "i2", "setting new int flag", 10)