move position module to folder

This commit is contained in:
Torsten Ruger
2018-05-31 19:01:10 +03:00
parent 49849939a1
commit 2544bc5a85
3 changed files with 8 additions and 6 deletions

View File

@ -0,0 +1,53 @@
require_relative "../helper"
module Risc
class TestMachinePositions < MiniTest::Test
def setup
@machine = Risc.machine.boot
end
def test_cpu_init
@machine.translate(:interpreter)
@machine.position_all
assert Position.get @machine.cpu_init
end
def test_cpu_label
@machine.translate(:interpreter)
@machine.position_all
assert Position.get( @machine.cpu_init.label )
end
def test_cpu_first_arm
@machine.translate(:arm)
@machine.position_all
assert Position.get( @machine.cpu_init.first )
end
def test_has_arm_pos
has_positions(:arm)
end
def test_has_int_pos
has_positions(:interpreter)
end
def has_positions(platform)
@machine.translate(:arm)
@machine.position_all
@machine.objects.each do |id,obj|
assert Position.get(obj)
end
end
def test_has_arm_meth
meth_positions(:arm)
end
def test_has_int_meth
meth_positions(:interpreter)
end
def meth_positions(platform)
@machine.translate(:arm)
@machine.position_all
Parfait.object_space.each_type do |type|
type.each_method do |method|
assert Position.get(method.binary)
assert Position.get(method.cpu_instructions)
end
end
end
end
end