summaryrefslogtreecommitdiff
path: root/test/ruby/test_lambda.rb
diff options
context:
space:
mode:
authorTanaka Akira <akr@fsij.org>2019-07-15 12:59:53 +0900
committerTanaka Akira <akr@fsij.org>2019-07-15 12:59:53 +0900
commitbd494ae79b18e260b0123bf40ddc1c694d7b25b8 (patch)
treeab6eceb61c97cb46699aa02c945a0155e3d1824d /test/ruby/test_lambda.rb
parent8ac1c6eb4837f5d088b7fc0a6ee51a5723f728a9 (diff)
add tests for "break" in lambda.
Diffstat (limited to 'test/ruby/test_lambda.rb')
-rw-r--r--test/ruby/test_lambda.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/ruby/test_lambda.rb b/test/ruby/test_lambda.rb
index 3ac2e4cb98..a30ea483e4 100644
--- a/test/ruby/test_lambda.rb
+++ b/test/ruby/test_lambda.rb
@@ -157,6 +157,21 @@ class TestLambdaParameters < Test::Unit::TestCase
assert_equal(42, return_in_callee(42), feature8693)
end
+ def break_in_current(val)
+ 1.tap(&->(*) {break 0})
+ val
+ end
+
+ def break_in_callee(val)
+ yield_block(&->(*) {break 0})
+ val
+ end
+
+ def test_break
+ assert_equal(42, break_in_current(42))
+ assert_equal(42, break_in_callee(42))
+ end
+
def test_do_lambda_source_location
exp_lineno = __LINE__ + 3
lmd = ->(x,