remove ad_transfer in save_message

towards removing all add_
change to set_builder and chaining in reg values
This commit is contained in:
Torsten Ruger
2018-08-14 20:08:58 +03:00
parent 37461a1727
commit 520dc7b41f
5 changed files with 24 additions and 15 deletions

View File

@ -45,15 +45,13 @@ module Risc
assert_equal Transfer , built.next.class
end
def test_returns_slot
r2 = RegisterValue.new(:r2 , :Message)
r2.builder = @builder
r2 = RegisterValue.new(:r2 , :Message).set_builder( @builder )
built = @builder.build{ r2 << space![:next_message] }
assert_equal SlotToReg , built.class
assert_equal :r1 , built.array.symbol
end
def test_returns_slot_reverse
r2 = RegisterValue.new(:r2 , :Message)
r2.builder = @builder
r2 = RegisterValue.new(:r2 , :Message).set_builder( @builder )
built = @builder.build{ r2 << space![:next_message] }
assert_equal SlotToReg , built.class
assert_equal :r1 , built.array.symbol

View File

@ -35,9 +35,14 @@ module Risc
transfer = @r0 << @r1
assert_equal Transfer , transfer.class
end
def test_set_builder
reg = @r0.set_builder(FakeBuilder.new)
assert_equal RegisterValue , reg.class
assert reg.builder
end
def test_calls_builder
builder = FakeBuilder.new
@r0.builder = builder
@r0.set_builder( builder )
@r0 << @r1
assert_equal Transfer , builder.built.class
end