code listener now get platform explicitly
used to grab it from global machine. Now passed in from linker tests fixed accordingly
This commit is contained in:
@ -10,22 +10,22 @@ module Risc
|
||||
end
|
||||
|
||||
def test_has_init
|
||||
pos = CodeListener.init(@binary)
|
||||
pos = CodeListener.init(@binary,:interpreter)
|
||||
assert_equal pos, Position.get(@binary)
|
||||
end
|
||||
def test_init_fail
|
||||
assert_raises{ CodeListener.init( @method)}
|
||||
end
|
||||
def test_init_returns_position
|
||||
assert_equal Position , CodeListener.init(@binary).class
|
||||
assert_equal Position , CodeListener.init(@binary , :interpreter).class
|
||||
end
|
||||
def test_not_init_listner
|
||||
pos = CodeListener.init(@binary)
|
||||
pos = CodeListener.init(@binary,:interpreter)
|
||||
assert CodeListener == pos.event_table[:position_changed].last.class
|
||||
end
|
||||
def test_init_listner
|
||||
@binary.extend_one
|
||||
CodeListener.init(@binary)
|
||||
CodeListener.init(@binary, :interpreter)
|
||||
pos = Position.get(@binary)
|
||||
assert_equal CodeListener , pos.event_table[:position_changed].first.class
|
||||
end
|
||||
|
@ -4,31 +4,31 @@ module Risc
|
||||
class TestCodeListenerFull < MiniTest::Test
|
||||
def setup
|
||||
Parfait.boot!
|
||||
@machine = Risc.machine.boot
|
||||
Risc.boot!
|
||||
@linker = Mom::MomCompiler.new.translate(:interpreter)
|
||||
@binary = Parfait::BinaryCode.new(1)
|
||||
@method = Parfait.object_space.types.values.first.methods
|
||||
@label = Risc.label("hi","ho")
|
||||
@machine.translate(:interpreter)
|
||||
@machine.position_all
|
||||
@linker.position_all
|
||||
end
|
||||
def test_listener_after_extend
|
||||
CodeListener.init(@binary).set(10)
|
||||
CodeListener.init(@binary,:interpreter).set(10)
|
||||
@binary.extend_one
|
||||
pos = Position.get(@binary.next)
|
||||
assert_equal CodeListener , pos.event_table[:position_changed].first.class
|
||||
end
|
||||
def test_valid_pos_for_extended
|
||||
@binary.extend_one
|
||||
CodeListener.init(@binary).set(10)
|
||||
CodeListener.init(@binary,:interpreter).set(10)
|
||||
assert Position.get(@binary.next).valid?
|
||||
end
|
||||
def test_extend_sets_next_pos
|
||||
CodeListener.init(@binary).set(10)
|
||||
CodeListener.init(@binary,:interpreter).set(10)
|
||||
@binary.extend_one
|
||||
assert Position.get(@binary.next).valid?
|
||||
end
|
||||
def test_extends_creates_jump
|
||||
CodeListener.init(@binary).set(10)
|
||||
CodeListener.init(@binary,:interpreter).set(10)
|
||||
assert_equal 0 , @binary.get_last
|
||||
@binary.extend_one
|
||||
assert 0 != @binary.get_last
|
||||
|
Reference in New Issue
Block a user