diff options
Diffstat (limited to 'spec/ruby/core')
-rw-r--r-- | spec/ruby/core/method/parameters_spec.rb | 15 | ||||
-rw-r--r-- | spec/ruby/core/proc/parameters_spec.rb | 12 |
2 files changed, 22 insertions, 5 deletions
diff --git a/spec/ruby/core/method/parameters_spec.rb b/spec/ruby/core/method/parameters_spec.rb index 3fdaf9ce6f..67b42afafa 100644 --- a/spec/ruby/core/method/parameters_spec.rb +++ b/spec/ruby/core/method/parameters_spec.rb @@ -222,9 +222,18 @@ describe "Method#parameters" do m.method(:handled_via_method_missing).parameters.should == [[:rest]] end - it "adds nameless rest arg for \"star\" argument" do - m = MethodSpecs::Methods.new - m.method(:one_unnamed_splat).parameters.should == [[:rest]] + ruby_version_is '3.1' do + it "adds * rest arg for \"star\" argument" do + m = MethodSpecs::Methods.new + m.method(:one_unnamed_splat).parameters.should == [[:rest, :*]] + end + end + + ruby_version_is ''...'3.1' do + it "adds nameless rest arg for \"star\" argument" do + m = MethodSpecs::Methods.new + m.method(:one_unnamed_splat).parameters.should == [[:rest]] + end end it "returns the args and block for a splat and block argument" do diff --git a/spec/ruby/core/proc/parameters_spec.rb b/spec/ruby/core/proc/parameters_spec.rb index 5fb5cf418d..60620722f8 100644 --- a/spec/ruby/core/proc/parameters_spec.rb +++ b/spec/ruby/core/proc/parameters_spec.rb @@ -80,8 +80,16 @@ describe "Proc#parameters" do -> x {}.parameters.should == [[:req, :x]] end - it "adds nameless rest arg for \"star\" argument" do - -> x, * {}.parameters.should == [[:req, :x], [:rest]] + ruby_version_is '3.1' do + it "adds * rest arg for \"star\" argument" do + -> x, * {}.parameters.should == [[:req, :x], [:rest, :*]] + end + end + + ruby_version_is ''...'3.1' do + it "adds nameless rest arg for \"star\" argument" do + -> x, * {}.parameters.should == [[:req, :x], [:rest]] + end end it "does not add locals as block options with a block and splat" do |