Torsten
8dfcc0f5de
only had such methods in tests, but they really belong in code also adding fake values to true ,false and nil
74 lines
1.9 KiB
Ruby
74 lines
1.9 KiB
Ruby
require_relative "helper"
|
|
|
|
module Parfait
|
|
class TestInteger < ParfaitTest
|
|
|
|
def setup
|
|
super
|
|
@int = Integer.new(10)
|
|
end
|
|
def test_index
|
|
assert_equal 2 , Integer.integer_index
|
|
end
|
|
def test_next_index
|
|
assert_equal 1 , Integer.next_index
|
|
end
|
|
def test_class
|
|
assert_equal :Integer, @int.get_type.object_class.name
|
|
end
|
|
def test_next_nil
|
|
assert_nil @int.next_integer
|
|
end
|
|
def test_next_not_nil
|
|
int2 = Integer.new(0 , @int)
|
|
assert_equal Integer, int2.next_integer.class
|
|
end
|
|
def test_value_10
|
|
assert_equal 10 , @int.value
|
|
end
|
|
def test_word_value_10
|
|
assert_equal 10 , @int.get_internal_word( Integer.integer_index )
|
|
end
|
|
def test_word_settable
|
|
assert_equal 20 , @int.set_internal_word( Integer.integer_index , 20 )
|
|
end
|
|
def test_word_set
|
|
assert_equal 20 , @int.set_internal_word( Integer.integer_index , 20 )
|
|
assert_equal 20 , @int.get_internal_word( Integer.integer_index )
|
|
end
|
|
def test_set
|
|
@int.set_value(1)
|
|
assert_equal 1 , @int.value
|
|
end
|
|
end
|
|
class AddressTest < ParfaitTest
|
|
def test_address
|
|
assert ReturnAddress.new(55)
|
|
end
|
|
def test_value
|
|
assert_equal 55 , ReturnAddress.new(55).value
|
|
end
|
|
def test_value_set
|
|
addr = ReturnAddress.new(55)
|
|
addr.set_value(33)
|
|
assert_equal 33 , addr.value
|
|
end
|
|
end
|
|
class TrueTest < MiniTest::Test
|
|
def test_true
|
|
assert TrueClass.new
|
|
end
|
|
def test_set
|
|
tru = TrueClass.new
|
|
assert_equal 20 , tru.set_internal_word( Integer.integer_index , 20 )
|
|
assert_equal 20 , tru.get_internal_word( Integer.integer_index )
|
|
end
|
|
def test_get_true
|
|
assert_equal 1 , TrueClass.new.get_internal_word( Integer.integer_index )
|
|
end
|
|
def test_get_false
|
|
assert_equal 0 , FalseClass.new.get_internal_word( Integer.integer_index )
|
|
end
|
|
end
|
|
end
|