summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authoreileencodes <eileencodes@gmail.com>2024-01-17 09:23:42 -0500
committerKevin Newton <kddnewton@gmail.com>2024-01-17 10:17:59 -0500
commit63ff29cdb4ba27eb366d706d81a74b89a1d6b18a (patch)
tree011c8500592063fa76786241c218bab9f5c820a6 /test/ruby
parentdcf9d77b45bcca3193a310e1a0f496e2d74cfc81 (diff)
[Prism] Fix return test
This test didn't work as is because it causes a SyntaxError. Instead we need to put the `defined?(return)` into a method and call that. I double checked that on the `master` branch this returns an Unsupported node error.
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_compile_prism.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb
index 3f416c1781..76dd05255b 100644
--- a/test/ruby/test_compile_prism.rb
+++ b/test/ruby/test_compile_prism.rb
@@ -222,9 +222,16 @@ module Prism
assert_prism_eval("defined?(next)")
assert_prism_eval("defined?(break)")
assert_prism_eval("defined?(redo)")
- assert_prism_eval("defined?(return)")
assert_prism_eval("defined?(retry)")
+ assert_prism_eval(<<~RUBY)
+ class PrismDefinedReturnNode
+ def self.m1; defined?(return) end
+ end
+
+ PrismDefinedReturnNode.m1
+ RUBY
+
assert_prism_eval("defined?(begin; 1; end)")
assert_prism_eval("defined?(defined?(a))")