From 68a81b44e3907f2ceb4dc3864e65b565c42d1c63 Mon Sep 17 00:00:00 2001 From: Jemma Issroff Date: Wed, 25 Oct 2023 12:40:30 -0300 Subject: [PRISM] Implement compilation for CallOrWriteNode --- test/ruby/test_compile_prism.rb | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb index ed37995929..8a4e03910e 100644 --- a/test/ruby/test_compile_prism.rb +++ b/test/ruby/test_compile_prism.rb @@ -633,6 +633,42 @@ module Prism ) end + def test_CallOrWriteNode + test_prism_eval(<<-CODE + def Object.test_call_or_write_node; end; + def Object.test_call_or_write_node=(val) + val + end + Object.test_call_or_write_node ||= 1 + CODE + ) + + test_prism_eval(<<-CODE + def Object.test_call_or_write_node + "str" + end + Object.test_call_or_write_node ||= 1 + CODE + ) + + test_prism_eval(<<-CODE + def self.test_call_or_write_node; end; + def self.test_call_or_write_node=(val) + val + end + self.test_call_or_write_node ||= 1 + CODE + ) + + test_prism_eval(<<-CODE + def self.test_call_or_write_node + "str" + end + self.test_call_or_write_node ||= 1 + CODE + ) + end + def test_KeywordHashNode assert_prism_eval("[a: [:b, :c]]") end -- cgit v1.2.3