test/test_command.rb in cri-2.12.0 vs test/test_command.rb in cri-2.13.0

- old
+ new

@@ -712,7 +712,49 @@ end assert_equal [], lines(out) assert_equal ['publish: incorrect number of arguments given: expected 1, but got 0'], lines(err) end + + def test_no_params_zero_args + dsl = Cri::CommandDSL.new + dsl.instance_eval do + name 'moo' + usage 'dunno whatever' + summary 'does stuff' + description 'This command does a lot of stuff.' + no_params + + run do |_opts, args| + end + end + command = dsl.command + + command.run([]) + end + + def test_no_params_one_arg + dsl = Cri::CommandDSL.new + dsl.instance_eval do + name 'moo' + usage 'dunno whatever' + summary 'does stuff' + description 'This command does a lot of stuff.' + no_params + + run do |_opts, args| + end + end + command = dsl.command + + out, err = capture_io_while do + err = assert_raises SystemExit do + command.run(['a']) + end + assert_equal 1, err.status + end + + assert_equal [], lines(out) + assert_equal ['moo: incorrect number of arguments given: expected 0, but got 1'], lines(err) + end end end