ruby/test/prism/compiler_test.rb

31 строка
640 B
Ruby

# frozen_string_literal: true
require_relative "test_helper"
module Prism
class CompilerTest < TestCase
class SExpressions < Prism::Compiler
def visit_arguments_node(node)
[:arguments, super]
end
def visit_call_node(node)
[:call, super]
end
def visit_integer_node(node)
[:integer]
end
def visit_program_node(node)
[:program, super]
end
end
def test_compiler
expected = [:program, [[[:call, [[:integer], [:arguments, [[:integer]]]]]]]]
assert_equal expected, Prism.parse("1 + 2").value.accept(SExpressions.new)
end
end
end