func (s *CmdSuite) TestInfo(c *C) { minimal := &TestCommand{Name: "verb", Minimal: true} help := minimal.Info().Help(testing.NewFlagSet()) c.Assert(string(help), Equals, minimalHelp) full := &TestCommand{Name: "verb"} f := testing.NewFlagSet() var ignored string f.StringVar(&ignored, "option", "", "option-doc") help = full.Info().Help(f) c.Assert(string(help), Equals, fullHelp) optionInfo := full.Info() optionInfo.Doc = "" help = optionInfo.Help(f) c.Assert(string(help), Equals, optionHelp) }
func (s *PortsSuite) TestHelp(c *C) { hctx := s.GetHookContext(c, -1, "") open, err := jujuc.NewCommand(hctx, "open-port") c.Assert(err, IsNil) flags := testing.NewFlagSet() c.Assert(string(open.Info().Help(flags)), Equals, ` usage: open-port <port>[/<protocol>] purpose: register a port to open The port will only be open while the service is exposed. `[1:]) close, err := jujuc.NewCommand(hctx, "close-port") c.Assert(err, IsNil) c.Assert(string(close.Info().Help(flags)), Equals, ` usage: close-port <port>[/<protocol>] purpose: ensure a port is always closed `[1:]) }
func (s *LogSuite) TestAddFlags(c *C) { l := &cmd.Log{} f := testing.NewFlagSet() l.AddFlags(f) err := f.Parse(false, []string{}) c.Assert(err, IsNil) c.Assert(l.Path, Equals, "") c.Assert(l.Verbose, Equals, false) c.Assert(l.Debug, Equals, false) c.Assert(l.Config, Equals, "") err = f.Parse(false, []string{"--log-file", "foo", "--verbose", "--debug", "--log-config=juju.cmd=INFO;juju.worker.deployer=DEBUG"}) c.Assert(err, IsNil) c.Assert(l.Path, Equals, "foo") c.Assert(l.Verbose, Equals, true) c.Assert(l.Debug, Equals, true) c.Assert(l.Config, Equals, "juju.cmd=INFO;juju.worker.deployer=DEBUG") }
func fs() (*gnuflag.FlagSet, *cmd.FileVar) { var config cmd.FileVar fs := testing.NewFlagSet() fs.Var(&config, "config", "the config") return fs, &config }