rubyx/test/risc/test_assembler.rb
Torsten Ruger aa79e41d1c rename register to risc
seems to fit the layer much better as we really have a very reduced
instruction set
2017-01-19 09:02:29 +02:00

44 lines
1.2 KiB
Ruby

require_relative "../helper"
module Risc
class TestAssembler < MiniTest::Test
def setup
@machine = Risc.machine.boot
end
def test_no_object
@assembler = Assembler.new(@machine , {})
assert_nil @machine.translate_arm
end
def test_space
@assembler = Assembler.new(@machine , Collector.collect_space)
assert_nil @machine.translate_arm
end
def test_write_fails
@assembler = Assembler.new(@machine , {})
assert_raises{ @assembler.assemble} #must translate first
end
def test_assemble_no_objects
@assembler = Assembler.new(@machine , {})
assert_nil @machine.translate_arm
assert @assembler.assemble
end
def test_translate_space
@assembler = Assembler.new(@machine , Collector.collect_space)
assert_nil @machine.translate_arm
end
def test_assemble_space
@assembler = Assembler.new(@machine , Collector.collect_space)
assert_nil @machine.translate_arm
assert @assembler.assemble
end
def test_write_space
@assembler = Assembler.new(@machine , Collector.collect_space)
assert_nil @machine.translate_arm
assert @assembler.write_as_string
end
end
end