Fixes for all test of next commit

This commit is contained in:
2020-02-17 14:27:42 +07:00
parent 21817b182e
commit 93103d551f
16 changed files with 109 additions and 62 deletions

View File

@ -54,11 +54,11 @@ module Sol
end
def test_left
assert_equal SlottedMessage , @ins.left.class
assert_equal [:return_value] , @ins.left.slots
assert_equal :return_value , @ins.left.slots.name
end
def test_right
assert_equal SlottedMessage , @ins.right.class
assert_equal [:receiver , :inst] , @ins.right.slots
assert_equal "receiver.inst" , @ins.right.slots.to_s
end
end
end

View File

@ -17,7 +17,7 @@ module SolBlocks
assert_equal :message , @ins.left.known_object
end
def test_slots_left
assert_equal [:local1] , @ins.left.slots
assert_equal :local1 , @ins.left.slots.name
end
def test_slot_assigns_something
assert @ins.right
@ -36,10 +36,10 @@ module SolBlocks
assert_equal SlotMachine::SlotLoad , @ins.class , @ins
end
def test_slots_left
assert_equal [:local1] , @ins.left.slots
assert_equal :local1 , @ins.left.slots.name
end
def test_slots_right
assert_equal [:receiver, :a] , @ins.right.slots
assert_equal "receiver.a" , @ins.right.slots.to_s
end
end
@ -57,7 +57,7 @@ module SolBlocks
assert @ins.left
end
def test_slots_left
assert_equal [:caller,:caller, :arg1] , @ins.left.slots
assert_equal "caller.caller.arg1" , @ins.left.slots.to_s
end
end

View File

@ -14,8 +14,8 @@ module Sol
def test_type_update
load = @ins.next(2)
assert_equal :message , load.right.known_object , load
assert_equal :local1 , load.right.slots[0] , load
assert_equal :type , load.right.slots[1] , load
assert_equal :local1 , load.right.slots.name , load
assert_equal :type , load.right.slots.next_slot.name , load
end
def test_check_resolve_call
assert_equal ResolveMethod , @ins.next(3).class , @ins

View File

@ -12,8 +12,8 @@ module Sol
[SlotMachine::IntegerConstant , 5]
end
def test_args_two_move
assert_equal :next_message, @ins.next(1).arguments[1].left.slots[0]
assert_equal :arg2, @ins.next(1).arguments[1].left.slots[1]
assert_equal :next_message, @ins.next(1).arguments[1].left.slots.name
assert_equal :arg2, @ins.next(1).arguments[1].left.slots.next_slot.name
end
def test_args_two_str
assert_equal SlotMachine::IntegerConstant, @ins.next(1).arguments[1].right.known_object.class

View File

@ -19,7 +19,7 @@ module Sol
assert_equal :message , @ins.left.known_object
end
def test_slot_gets_local
assert_equal :local1 , @ins.left.slots[0]
assert_equal :local1 , @ins.left.slots.name
end
def test_slot_assigns_something
assert @ins.right
@ -60,7 +60,7 @@ module Sol
assert_equal :message , @ins.left.known_object
end
def test_slot_gets_arg
assert_equal :arg1 , @ins.left.slots[0]
assert_equal :arg1 , @ins.left.slots.name
end
end

View File

@ -19,10 +19,10 @@ module Sol
assert_equal :message , @ins.left.known_object
end
def test_slot_gets_self
assert_equal :receiver , @ins.left.slots[0]
assert_equal :receiver , @ins.left.slots.name
end
def test_slot_assigns_to_local
assert_equal :a , @ins.left.slots[-1]
assert_equal :a , @ins.left.slots.next_slot.name
end
def test_slot_assigns_something
assert @ins.right

View File

@ -22,7 +22,7 @@ module Sol
assert_equal :message , @ins.left.known_object
end
def test_slot_gets_local
assert_equal :local1 , @ins.left.slots[0]
assert_equal :local1 , @ins.left.slots.name
end
def test_slot_assigns_something
assert @ins.right
@ -51,7 +51,7 @@ module Sol
assert_equal :message , @ins.left.known_object
end
def test_slot_gets_arg
assert_equal :arg1 , @ins.left.slots[0]
assert_equal :arg1 , @ins.left.slots.name
end
def test_slot_assigns_something
assert @ins.right

View File

@ -22,7 +22,7 @@ module Sol
assert_equal :message , @ins.left.known_object
end
def test_slot_gets_return
assert_equal :return_value , @ins.left.slots[0]
assert_equal :return_value , @ins.left.slots.name
end
def test_slot_assigns_something
assert @ins.right

View File

@ -25,18 +25,18 @@ module Sol
left = @ins.next(3).arguments[0].left
assert_equal Symbol, left.known_object.class
assert_equal :message, left.known_object
assert_equal [:next_message, :arg1], left.slots
assert_equal "message.next_message.arg1", left.to_s
end
def test_check_left
assert_equal SlottedObject, @ins.left.class
assert_equal Parfait::CallableMethod, @ins.left.known_object.class
assert_equal :main, @ins.left.known_object.name
assert @ins.left.slots.empty?
assert !@ins.left.slots
end
def test_check_right
assert_equal SlottedMessage, @ins.right.class
assert_equal :message, @ins.right.known_object
assert_equal [:method] , @ins.right.slots
assert_equal "message.method" , @ins.right.to_s
end
def test_label
assert_equal Label, @ins.next(1).class
@ -48,7 +48,7 @@ module Sol
end
def test_receiver
assert_equal :message , @ins.next(3).receiver.known_object
assert_equal [:receiver] , @ins.next(3).receiver.slots
assert_equal :receiver , @ins.next(3).receiver.slots.name
end
def test_yield
assert_equal BlockYield, @ins.next(4).class
@ -58,8 +58,8 @@ module Sol
assert_equal SlotLoad, @ins.next(5).class
assert_equal :message, @ins.next(5).left.known_object
assert_equal :message, @ins.next(5).right.known_object
assert_equal [:return_value], @ins.next(5).left.slots
assert_equal [:return_value], @ins.next(5).right.slots
assert_equal :return_value, @ins.next(5).left.slots.name
assert_equal :return_value, @ins.next(5).right.slots.name
end
def test_return
assert_equal ReturnJump, @ins.next(6).class