2019-08-11 13:31:00 +02:00
|
|
|
require_relative "helper"
|
|
|
|
|
2019-08-12 11:36:32 +02:00
|
|
|
module Mom
|
2019-08-11 13:31:00 +02:00
|
|
|
module Builtin
|
2019-08-12 12:16:15 +02:00
|
|
|
class TestObjectGet < BootTest
|
2019-08-11 13:31:00 +02:00
|
|
|
def setup
|
|
|
|
super
|
2019-08-22 16:52:19 +02:00
|
|
|
@method = get_object_compiler(:get_internal_word)
|
2019-08-11 13:31:00 +02:00
|
|
|
end
|
|
|
|
def test_has_get_internal
|
|
|
|
assert_equal Mom::MethodCompiler , @method.class
|
|
|
|
end
|
|
|
|
def test_mom_length
|
|
|
|
assert_equal 5 , @method.mom_instructions.length
|
|
|
|
end
|
2019-08-23 18:24:18 +02:00
|
|
|
def test_return
|
|
|
|
assert_equal ReturnSequence , @method.mom_instructions.next(3).class
|
|
|
|
end
|
2019-08-11 13:31:00 +02:00
|
|
|
end
|
2019-08-12 12:16:15 +02:00
|
|
|
class TestObjectSet < BootTest
|
2019-08-11 19:36:10 +02:00
|
|
|
def setup
|
|
|
|
super
|
2019-08-22 16:52:19 +02:00
|
|
|
@method = get_object_compiler(:set_internal_word)
|
2019-08-11 19:36:10 +02:00
|
|
|
end
|
|
|
|
def test_has_get_internal
|
|
|
|
assert_equal Mom::MethodCompiler , @method.class
|
|
|
|
end
|
|
|
|
def test_mom_length
|
|
|
|
assert_equal 5 , @method.mom_instructions.length
|
|
|
|
end
|
|
|
|
end
|
2019-08-12 12:16:15 +02:00
|
|
|
class TestObjectMissing < BootTest
|
2019-08-11 19:36:10 +02:00
|
|
|
def setup
|
|
|
|
super
|
2019-08-22 16:52:19 +02:00
|
|
|
@method = get_object_compiler(:_method_missing)
|
2019-08-11 19:36:10 +02:00
|
|
|
end
|
|
|
|
def test_has_get_internal
|
|
|
|
assert_equal Mom::MethodCompiler , @method.class
|
|
|
|
end
|
|
|
|
def test_mom_length
|
|
|
|
assert_equal 5 , @method.mom_instructions.length
|
|
|
|
end
|
|
|
|
end
|
2019-08-12 12:16:15 +02:00
|
|
|
class TestObjectExit < BootTest
|
2019-08-11 19:36:10 +02:00
|
|
|
def setup
|
|
|
|
super
|
2019-08-22 16:52:19 +02:00
|
|
|
@method = get_object_compiler(:exit)
|
2019-08-11 19:36:10 +02:00
|
|
|
end
|
|
|
|
def test_has_get_internal
|
|
|
|
assert_equal Mom::MethodCompiler , @method.class
|
|
|
|
end
|
|
|
|
def test_mom_length
|
|
|
|
assert_equal 5 , @method.mom_instructions.length
|
|
|
|
end
|
|
|
|
end
|
2019-08-12 12:16:15 +02:00
|
|
|
class TestObjectInit < BootTest
|
2019-08-11 19:36:10 +02:00
|
|
|
def setup
|
|
|
|
super
|
2019-08-22 16:52:19 +02:00
|
|
|
@method = get_object_compiler(:__init__)
|
2019-08-11 19:36:10 +02:00
|
|
|
end
|
|
|
|
def test_has_get_internal
|
|
|
|
assert_equal Mom::MethodCompiler , @method.class
|
|
|
|
end
|
|
|
|
def test_mom_length
|
2019-08-23 18:24:18 +02:00
|
|
|
assert_equal 2 , @method.mom_instructions.length
|
2019-08-11 19:36:10 +02:00
|
|
|
end
|
|
|
|
end
|
2019-08-11 13:31:00 +02:00
|
|
|
end
|
|
|
|
end
|