func (s *RegisterSuite) run(c *gc.C, stdin io.Reader, args ...string) (*cmd.Context, error) { command := controller.NewRegisterCommandForTest(s.apiOpen, s.refreshModels, s.store) err := testing.InitCommand(command, args) c.Assert(err, jc.ErrorIsNil) ctx := testing.Context(c) ctx.Stdin = stdin return ctx, command.Run(ctx) }
func (s *RegisterSuite) TestInit(c *gc.C) { registerCommand := controller.NewRegisterCommandForTest(nil, nil, nil) err := testing.InitCommand(registerCommand, []string{}) c.Assert(err, gc.ErrorMatches, "registration data missing") err = testing.InitCommand(registerCommand, []string{"foo"}) c.Assert(err, jc.ErrorIsNil) c.Assert(registerCommand.EncodedData, gc.Equals, "foo") err = testing.InitCommand(registerCommand, []string{"foo", "bar"}) c.Assert(err, gc.ErrorMatches, `unrecognized args: \["bar"\]`) }
func (s *RegisterSuite) run(c *gc.C, stdio io.ReadWriter, args ...string) error { if stdio == nil { p := noPrompts(c) stdio = p defer p.CheckDone() } command := controller.NewRegisterCommandForTest(s.apiOpen, s.listModels, s.store) err := testing.InitCommand(command, args) c.Assert(err, jc.ErrorIsNil) return command.Run(&cmd.Context{ Dir: c.MkDir(), Stdin: stdio, Stdout: stdio, Stderr: stdio, }) }