diff options
Diffstat (limited to 'spec/ruby')
| -rw-r--r-- | spec/ruby/core/proc/parameters_spec.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/spec/ruby/core/proc/parameters_spec.rb b/spec/ruby/core/proc/parameters_spec.rb index 11a38b66e3..3ced7b22ab 100644 --- a/spec/ruby/core/proc/parameters_spec.rb +++ b/spec/ruby/core/proc/parameters_spec.rb @@ -20,6 +20,21 @@ describe "Proc#parameters" do proc {|x| }.parameters.first.first.should == :opt end + ruby_version_is "3.2" do + it "sets the first element of each sub-Array to :req if argument would be required if a lambda if lambda keyword used" do + proc {|x| }.parameters(lambda: true).first.first.should == :req + proc {|y,*x| }.parameters(lambda: true).first.first.should == :req + end + + it "regards named parameters in procs as required if lambda keyword used" do + proc {|x| }.parameters(lambda: true).first.first.should == :req + end + + it "regards named parameters in lambda as optional if lambda: false keyword used" do + lambda {|x| }.parameters(lambda: false).first.first.should == :opt + end + end + it "regards optional keyword parameters in procs as optional" do proc {|x: :y| }.parameters.first.first.should == :key end |
