From e80c0c90cdb70af959ec2e7ac621f5d3386e17f8 Mon Sep 17 00:00:00 2001 From: h2so5 Date: Fri, 20 Dec 2013 15:29:23 +0900 Subject: add some tests for case statements --- test/t/syntax.rb | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/test/t/syntax.rb b/test/t/syntax.rb index c87a81e06..4ddbefea3 100644 --- a/test/t/syntax.rb +++ b/test/t/syntax.rb @@ -74,3 +74,31 @@ assert('Splat and mass assignment') do assert_equal 7, b assert_equal [8,9], c end + +assert('Return values of case statements') do + a = [] << case 1 + when 3 then 2 + when 2 then 2 + when 1 then 2 + end + + b = [] << case 1 + when 2 then 2 + else + end + + def fb + n = 0 + Proc.new do + n += 1 + case + when n % 15 == 0 + else n + end + end + end + + assert_equal [2], a + assert_equal [nil], b + assert_equal 1, fb.call +end -- cgit v1.2.3