rubyx/test/mains/test_interpreted.rb
Torsten Ruger 554c2d3d73 just checking fibo 30
at just under 8000 instructions i can't wait to run real benchmarks
2018-08-06 14:13:39 +03:00

30 lines
891 B
Ruby

require_relative 'helper'
module Mains
class TestInterpreted < MiniTest::Test
include Risc::Ticker
def setup;end
# runnable_methods is called by minitest to determine which tests to run
def self.runnable_methods
all = Dir["test/mains/source/*.rb"]
tests =[]
all.each do |file_name|
fullname = file_name.split("/").last.split(".").first
name , stdout , exit_code = fullname.split("_")
method_name = "test_#{name}"
tests << method_name
input = File.read(file_name)
self.send(:define_method, method_name ) do
ticks = run_main(input)
#puts "Ticks for #{method_name}=#{ticks}"
assert_equal stdout , @interpreter.stdout , "Wrong stdout #{name}"
assert_equal exit_code , get_return.to_s , "Wrong exit code #{name}"
end
end
tests
end
end
end