ruby-changes:59558
From: Alan <ko1@a...>
Date: Tue, 31 Dec 2019 08:26:40 +0900 (JST)
Subject: [ruby-changes:59558] 3264a00958 (master): Fix Proc#<< spec
https://git.ruby-lang.org/ruby.git/commit/?id=3264a00958 From 3264a00958f56e1ba75a95c93e59fc9cccf323e8 Mon Sep 17 00:00:00 2001 From: Alan Wu <XrXr@u...> Date: Mon, 30 Dec 2019 18:13:55 -0500 Subject: Fix Proc#<< spec [Bug #16406] diff --git a/spec/ruby/core/proc/compose_spec.rb b/spec/ruby/core/proc/compose_spec.rb index cc7d70a..ef9c125 100644 --- a/spec/ruby/core/proc/compose_spec.rb +++ b/spec/ruby/core/proc/compose_spec.rb @@ -38,20 +38,34 @@ ruby_version_is "2.6" do https://github.com/ruby/ruby/blob/trunk/spec/ruby/core/proc/compose_spec.rb#L38 (f << g).lambda?.should == false end - it "is a Proc when other is lambda" do - f = proc { |x| x * x } - g = -> x { x + x } - - (f << g).is_a?(Proc).should == true - (f << g).lambda?.should == false + ruby_version_is(''...'2.8') do + it "is a Proc when other is lambda" do + f = proc { |x| x * x } + g = -> x { x + x } + + (f << g).is_a?(Proc).should == true + (f << g).lambda?.should == false + end + + it "is a lambda when self is lambda" do + f = -> x { x * x } + g = proc { |x| x + x } + + (f << g).is_a?(Proc).should == true + (f << g).lambda?.should == true + end end - it "is a lambda when self is lambda" do - f = -> x { x * x } - g = proc { |x| x + x } + ruby_version_is('2.8') do + it "is a lambda when parameter is lambda" do + f = -> x { x * x } + g = proc { |x| x + x } + lambda_proc = -> x { x } - (f << g).is_a?(Proc).should == true - (f << g).lambda?.should == true + (f << g).is_a?(Proc).should == true + (f << g).lambda?.should == false + (f << lambda_proc).lambda?.should == true + end end it "may accept multiple arguments" do -- cgit v0.10.2 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/