add extra check for unexpected args to leave command

This commit is contained in:
nick.grange 2016-07-24 00:36:59 +10:00
parent bcd08aa0ce
commit e564282d76
2 changed files with 20 additions and 0 deletions

View File

@ -33,6 +33,12 @@ func (c *LeaveCommand) Run(args []string) int {
if err := cmdFlags.Parse(args); err != nil {
return 1
}
nonFlagArgs := cmdFlags.Args()
if len(nonFlagArgs) > 0 {
c.Ui.Error(fmt.Sprintf("Error found unexpected args: %v", nonFlagArgs))
c.Ui.Output(c.Help())
return 1
}
client, err := RPCClient(*rpcAddr)
if err != nil {

View File

@ -27,3 +27,17 @@ func TestLeaveCommandRun(t *testing.T) {
t.Fatalf("bad: %#v", ui.OutputWriter.String())
}
}
func TestLeaveCommandFailOnNonFlagArgs(t *testing.T) {
a1 := testAgent(t)
defer a1.Shutdown()
ui := new(cli.MockUi)
c := &LeaveCommand{Ui: ui}
args := []string{"-rpc-addr=" + a1.addr, "appserver1"}
code := c.Run(args)
if code == 0 {
t.Fatalf("bad: failed to check for unexpected args")
}
}