aboutsummaryrefslogtreecommitdiffstats
path: root/spec/ruby/core/kernel
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-01-10 08:19:14 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-01-10 08:19:14 +0000
commit9f1fb0a17febc59356d58cef5e98db61a3c03550 (patch)
tree14c3bf6cd585b859d030ec8d41e6b6e16b0e01e7 /spec/ruby/core/kernel
parentec336fb40e4df0c8615e584fbefb5e9e572cb9ec (diff)
downloadruby-9f1fb0a17febc59356d58cef5e98db61a3c03550.tar.gz
proc.c: proc without block
* proc.c (proc_new): promoted lambda/proc/Proc.new with no block in a method called with a block to a warning/error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/ruby/core/kernel')
-rw-r--r--spec/ruby/core/kernel/proc_spec.rb24
1 files changed, 19 insertions, 5 deletions
diff --git a/spec/ruby/core/kernel/proc_spec.rb b/spec/ruby/core/kernel/proc_spec.rb
index d9c09117e7..2c0e7988f9 100644
--- a/spec/ruby/core/kernel/proc_spec.rb
+++ b/spec/ruby/core/kernel/proc_spec.rb
@@ -36,14 +36,28 @@ describe "Kernel.proc" do
end
describe "Kernel#proc" do
- it "uses the implicit block from an enclosing method" do
- def some_method
- proc
+ ruby_version_is ""..."2.7" do
+ it "uses the implicit block from an enclosing method" do
+ def some_method
+ proc
+ end
+
+ prc = some_method { "hello" }
+
+ prc.call.should == "hello"
end
+ end
- prc = some_method { "hello" }
+ ruby_version_is "2.7" do
+ it "can be created when called with no block" do
+ def some_method
+ proc
+ end
- prc.call.should == "hello"
+ -> {
+ some_method { "hello" }
+ }.should complain(/tried to create Proc object without a block/)
+ end
end
it "needs to be reviewed for spec completeness"