summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authorPeter Zhu <peter@peterzhu.ca>2024-01-15 15:08:39 -0500
committerPeter Zhu <peter@peterzhu.ca>2024-01-16 08:32:21 -0500
commit0520e9675b91ea559da1ae5eda9db378fbdbca52 (patch)
tree42b45a0961f813e43a7c2397c326fb2243564dd5 /test/ruby
parentd6b6e14c87d5c956dd92287e01d48cf1c2ca4301 (diff)
[PRISM] Fix defined? for chained calls
Fixes ruby/prism#2148.
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_compile_prism.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb
index b6ff666fb9..3b33908c52 100644
--- a/test/ruby/test_compile_prism.rb
+++ b/test/ruby/test_compile_prism.rb
@@ -209,6 +209,15 @@ module Prism
assert_prism_eval("defined?(a(itself))")
assert_prism_eval("defined?(itself(itself))")
+
+ # Method chain on a constant
+ assert_prism_eval(<<~RUBY)
+ class PrismDefinedNode
+ def m1; end
+ end
+
+ defined?(PrismDefinedNode.new.m1)
+ RUBY
end
def test_GlobalVariableReadNode