diff options
author | Benoit Daloze <eregontp@gmail.com> | 2024-02-26 14:45:30 +0100 |
---|---|---|
committer | Benoit Daloze <eregontp@gmail.com> | 2024-02-26 14:45:30 +0100 |
commit | 815db5c0289f5bbea2af275933ba6a4bf60a6967 (patch) | |
tree | db319dbcc035e4248ee25c47916c6e0c1171164b /spec/ruby/core/proc | |
parent | 40c9a3dad5bc18213eb9b5ad21aa00580c12c77b (diff) |
Update to ruby/spec@3a510bb
Diffstat (limited to 'spec/ruby/core/proc')
-rw-r--r-- | spec/ruby/core/proc/parameters_spec.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/spec/ruby/core/proc/parameters_spec.rb b/spec/ruby/core/proc/parameters_spec.rb index 6c21784ab6..972596d2ea 100644 --- a/spec/ruby/core/proc/parameters_spec.rb +++ b/spec/ruby/core/proc/parameters_spec.rb @@ -33,6 +33,16 @@ describe "Proc#parameters" do it "regards named parameters in lambda as optional if lambda: false keyword used" do -> x { }.parameters(lambda: false).first.first.should == :opt end + + it "regards named parameters in procs and lambdas as required if lambda keyword is truthy" do + proc {|x| }.parameters(lambda: 123).first.first.should == :req + -> x { }.parameters(lambda: 123).first.first.should == :req + end + + it "ignores the lambda keyword if it is nil" do + proc {|x|}.parameters(lambda: nil).first.first.should == :opt + -> x { }.parameters(lambda: nil).first.first.should == :req + end end it "regards optional keyword parameters in procs as optional" do @@ -160,4 +170,8 @@ describe "Proc#parameters" do [:block, :_] ] end + + it "returns :nokey for **nil parameter" do + proc { |**nil| }.parameters.should == [[:nokey]] + end end |