test/test_command_dsl.rb in cri-2.12.0 vs test/test_command_dsl.rb in cri-2.13.0
- old
+ new
@@ -266,7 +266,37 @@
$args_sym = '???'
command.run(%w[a b c])
assert_equal({ foo: 'a', bar: 'b', qux: 'c' }, $args_num)
assert_equal({ foo: 'a', bar: 'b', qux: 'c' }, $args_sym)
end
+
+ def test_no_params_with_one_param_specified
+ dsl = Cri::CommandDSL.new
+ err = assert_raises Cri::CommandDSL::AlreadySpecifiedWithParams do
+ dsl.instance_eval do
+ name 'moo'
+ usage 'dunno whatever'
+ summary 'does stuff'
+ description 'This command does a lot of stuff.'
+ param :oink
+ no_params
+ end
+ end
+ assert_equal('Attempted to declare the command "moo" as taking no parameters, but some parameters are already declared for this command. Suggestion: remove the #no_params call.', err.message)
+ end
+
+ def test_one_param_with_no_params_specified
+ dsl = Cri::CommandDSL.new
+ err = assert_raises Cri::CommandDSL::AlreadySpecifiedAsNoParams do
+ dsl.instance_eval do
+ name 'moo'
+ usage 'dunno whatever'
+ summary 'does stuff'
+ description 'This command does a lot of stuff.'
+ no_params
+ param :oink
+ end
+ end
+ assert_equal('Attempted to specify a parameter :oink to the command "moo", which is already specified as taking no params. Suggestion: remove the #no_params call.', err.message)
+ end
end
end