diff options
| author | ksss <[email protected]> | 2016-09-08 16:25:26 +0900 |
|---|---|---|
| committer | ksss <[email protected]> | 2016-09-08 16:35:41 +0900 |
| commit | d46702234700d6b58177829a863224b0b59d4de1 (patch) | |
| tree | e6655656d301bbf0cca0977bd5e99eab089c6079 /test/t/syntax.rb | |
| parent | d265c03da0a4a1f8fe3bd20d69c0f78588ec8aff (diff) | |
| download | mruby-d46702234700d6b58177829a863224b0b59d4de1.tar.gz mruby-d46702234700d6b58177829a863224b0b59d4de1.zip | |
Add testing for regression
Diffstat (limited to 'test/t/syntax.rb')
| -rw-r--r-- | test/t/syntax.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/t/syntax.rb b/test/t/syntax.rb index 25ae09828..3bc68484b 100644 --- a/test/t/syntax.rb +++ b/test/t/syntax.rb @@ -307,6 +307,36 @@ assert('Return values of no expression case statement') do assert_equal 1, when_value end +assert('splat object in assignment') do + o = Object.new + def o.to_a + nil + end + assert_equal [o], (a = *o) + + def o.to_a + 1 + end + assert_raise(TypeError) { a = *o } + + def o.to_a + [2] + end + assert_equal [2], (a = *o) +end + +assert('splat object in case statement') do + o = Object.new + def o.to_a + nil + end + a = case o + when *o + 1 + end + assert_equal 1, a +end + assert('splat in case statement') do values = [3,5,1,7,8] testa = [1,2,7] |
