rubyx/test/elf/test_hello.rb

40 lines
960 B
Ruby
Raw Normal View History

2015-10-14 12:48:42 +02:00
require_relative "../helper"
class HelloTest < MiniTest::Test
2016-12-08 18:39:16 +01:00
include AST::Sexp
def check
2015-10-22 17:16:29 +02:00
machine = Register.machine.boot
2016-12-08 18:39:16 +01:00
Typed.compile( @input )
machine.collect
machine.translate_arm
2015-11-12 19:02:44 +01:00
writer = Elf::ObjectWriter.new
2014-08-30 13:17:00 +02:00
writer.save "hello.o"
end
def test_string_put
@string_input = <<HERE
class Object
int main()
return "Hello again\n".putstring()
end
end
HERE
2016-12-08 18:39:16 +01:00
@input = s(:statements,
s(:class, :Object,
s(:derives, nil),
s(:statements,
s(:function, :Integer,
s(:name, :main),
s(:parameters),
s(:statements,
s(:return,
s(:call,
s(:name, :putstring),
s(:arguments),
s(:receiver,
s(:string, "Hello again\\n")))))))))
check
end
end