summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authorJemma Issroff <jemmaissroff@gmail.com>2023-10-20 12:03:02 -0300
committerJemma Issroff <jemmaissroff@gmail.com>2023-10-23 12:37:50 -0300
commit62c674f98cc74b4f1be1b909d69523f95bffe59f (patch)
tree363f9f45dbea16dd67a44a8256a8a8fc9ab8b4ff /test/ruby
parent296da1a2b8fdcd8d420ced94ab553b7d3fa517d9 (diff)
[PRISM] Fix compilation for IfNode, UnlessNode
This properly implements the branch condition for FlipFlopNodes on If / UnlessNodes, and also fixes the bug in UnlessNodes
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_compile_prism.rb16
1 files changed, 11 insertions, 5 deletions
diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb
index d1bb1ddbf7..6b19abfe68 100644
--- a/test/ruby/test_compile_prism.rb
+++ b/test/ruby/test_compile_prism.rb
@@ -423,6 +423,13 @@ module Prism
def test_IfNode
test_prism_eval("if true; 1; end")
test_prism_eval("1 if true")
+ test_prism_eval('a = b = 1; if a..b; end')
+ test_prism_eval('if "a".."b"; end')
+ test_prism_eval('if "a"..; end')
+ test_prism_eval('if .."b"; end')
+ test_prism_eval('if ..1; end')
+ test_prism_eval('if 1..; end')
+ test_prism_eval('if 1..2; end')
end
def test_OrNode
@@ -431,11 +438,10 @@ module Prism
end
def test_UnlessNode
- # TODO:
- # test_prism_eval("1 unless true")
- # test_prism_eval("1 unless false")
- # test_prism_eval("unless true; 1; end")
- # test_prism_eval("unless false; 1; end")
+ test_prism_eval("1 unless true")
+ test_prism_eval("1 unless false")
+ test_prism_eval("unless true; 1; end")
+ test_prism_eval("unless false; 1; end")
end
def test_UntilNode