From 7ef5226520cbd13bdbc65a7f3c60188e002b133c Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Sat, 12 Dec 2020 23:25:15 +0900 Subject: [PATCH] spec: suppress deprecations of "lambda(&proc_block)" pattern --- spec/ruby/core/kernel/lambda_spec.rb | 16 ++++++++++------ spec/ruby/core/kernel/shared/lambda.rb | 4 +++- spec/ruby/language/lambda_spec.rb | 12 ++++++++---- 3 files changed, 21 insertions(+), 11 deletions(-) diff --git a/spec/ruby/core/kernel/lambda_spec.rb b/spec/ruby/core/kernel/lambda_spec.rb index dfe36cefaa..4dd34c6ca9 100644 --- a/spec/ruby/core/kernel/lambda_spec.rb +++ b/spec/ruby/core/kernel/lambda_spec.rb @@ -27,8 +27,10 @@ describe "Kernel.lambda" do end it "creates a lambda-style Proc if given a literal block via Kernel.public_send" do - l = Kernel.public_send(:lambda) { 42 } - l.lambda?.should be_true + suppress_warning do + l = Kernel.public_send(:lambda) { 42 } + l.lambda?.should be_true + end end it "returns the passed Proc if given an existing Proc" do @@ -39,11 +41,13 @@ describe "Kernel.lambda" do end it "creates a lambda-style Proc when called with zsuper" do - l = KernelSpecs::LambdaSpecs::ForwardBlockWithZSuper.new.lambda { 42 } - l.lambda?.should be_true - l.call.should == 42 + suppress_warning do + l = KernelSpecs::LambdaSpecs::ForwardBlockWithZSuper.new.lambda { 42 } + l.lambda?.should be_true + l.call.should == 42 - lambda { l.call(:extra) }.should raise_error(ArgumentError) + lambda { l.call(:extra) }.should raise_error(ArgumentError) + end end it "returns the passed Proc if given an existing Proc through super" do diff --git a/spec/ruby/core/kernel/shared/lambda.rb b/spec/ruby/core/kernel/shared/lambda.rb index c7180e1442..c70640082a 100644 --- a/spec/ruby/core/kernel/shared/lambda.rb +++ b/spec/ruby/core/kernel/shared/lambda.rb @@ -4,6 +4,8 @@ describe :kernel_lambda, shared: true do end it "raises an ArgumentError when no block is given" do - -> { send(@method) }.should raise_error(ArgumentError) + suppress_warning do + -> { send(@method) }.should raise_error(ArgumentError) + end end end diff --git a/spec/ruby/language/lambda_spec.rb b/spec/ruby/language/lambda_spec.rb index 1c9acba39c..630817c909 100644 --- a/spec/ruby/language/lambda_spec.rb +++ b/spec/ruby/language/lambda_spec.rb @@ -348,7 +348,9 @@ describe "A lambda expression 'lambda { ... }'" do end it "requires a block" do - lambda { lambda }.should raise_error(ArgumentError) + suppress_warning do + lambda { lambda }.should raise_error(ArgumentError) + end end it "may include a rescue clause" do @@ -375,9 +377,11 @@ describe "A lambda expression 'lambda { ... }'" do ruby_version_is "2.7" do it "raises ArgumentError" do implicit_lambda = nil - -> { - meth { 1 } - }.should raise_error(ArgumentError, /tried to create Proc object without a block/) + suppress_warning do + -> { + meth { 1 } + }.should raise_error(ArgumentError, /tried to create Proc object without a block/) + end end end end