From 4b4ddd5a28b74ce6add69667d542aaa3f3dfa38c Mon Sep 17 00:00:00 2001 From: Kouhei Sutou Date: Tue, 24 Feb 2015 00:21:49 +0900 Subject: Fix a bug that no expression case doesn't return valid value Here is a script that reproduces this problem: x = case when true; 1 end p x # => main # 1 is expected --- test/t/syntax.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'test/t/syntax.rb') diff --git a/test/t/syntax.rb b/test/t/syntax.rb index 2621e1b19..d21748de1 100644 --- a/test/t/syntax.rb +++ b/test/t/syntax.rb @@ -255,6 +255,16 @@ assert('Return values of if and case statements') do assert_equal 1, true_clause_value end +assert('Return values of no expression case statement') do + when_value = + case + when true + 1 + end + + assert_equal 1, when_value +end + assert('splat in case statement') do values = [3,5,1,7,8] testa = [1,2,7] -- cgit v1.2.3