diff options
author | Jemma Issroff <jemmaissroff@gmail.com> | 2023-12-04 11:36:35 -0500 |
---|---|---|
committer | Jemma Issroff <jemmaissroff@gmail.com> | 2023-12-04 14:03:00 -0500 |
commit | e3ca50b02fc4e3381f62a60bce0164d2132cf4ed (patch) | |
tree | 9320bc16fcc9a960e545057e929829d06a4ec3c2 /test | |
parent | 71babe5536bdb2238509752d8706194ee57ff485 (diff) | |
download | ruby-e3ca50b02fc4e3381f62a60bce0164d2132cf4ed.tar.gz |
[PRISM] Fix compilation for NextNode
This code was almost enitrely the same as the existing compiler's
code for its NextNode.
Diffstat (limited to 'test')
-rw-r--r-- | test/ruby/test_compile_prism.rb | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb index 34abf982ae..e51ca190d5 100644 --- a/test/ruby/test_compile_prism.rb +++ b/test/ruby/test_compile_prism.rb @@ -760,8 +760,38 @@ module Prism end def test_NextNode - # TODO: - # assert_prism_eval("2.times do |i|; next if i == 1; end") + assert_prism_eval("2.times do |i|; next if i == 1; end") + + assert_prism_eval(<<-CODE) + res = [] + i = 0 + while i < 5 + i += 1 + next if i == 3 + res << i + end + res + CODE + + assert_prism_eval(<<-CODE) + res = [] + (1..5).each do |i| + next if i.even? + res << i + end + res + CODE + + assert_prism_eval(<<-CODE) + res = [] + i = 0 + begin + i += 1 + next if i == 3 + res << i + end while i < 5 + res + CODE end def test_RedoNode |