still fixing index bugs
the indexed_length got written wrong which is why the layout methods didn’t work Now all indexes are 1 based, even fake men, where we just ignore 0
This commit is contained in:
@ -21,7 +21,7 @@ class TestLayout < MiniTest::Test
|
||||
end
|
||||
|
||||
def test_layout_index
|
||||
assert_equal @mess.get_layout , @mess.internal_object_get(0) , "mess"
|
||||
assert_equal @mess.get_layout , @mess.internal_object_get(Parfait::LAYOUT_INDEX) , "mess"
|
||||
end
|
||||
|
||||
def test_inspect
|
||||
@ -73,6 +73,6 @@ class TestLayout < MiniTest::Test
|
||||
|
||||
def test_remove_me
|
||||
layout = @mess.get_layout
|
||||
assert_equal layout , @mess.internal_object_get(0)
|
||||
assert_equal layout , @mess.internal_object_get(1)
|
||||
end
|
||||
end
|
||||
|
@ -37,10 +37,18 @@ class TestList < MiniTest::Test
|
||||
assert_equal 0 , @list.get_length
|
||||
assert_equal nil , @list.indexed_length
|
||||
end
|
||||
def test_offset
|
||||
assert_equal 2 , @list.get_offset
|
||||
end
|
||||
def test_indexed_index
|
||||
# 1 layout , 2 indexed_length
|
||||
assert_equal 2 , @list.get_layout.variable_index(:indexed_length)
|
||||
end
|
||||
def test_length1
|
||||
@list.push :one
|
||||
assert_equal 1 , @list.get_length
|
||||
assert_equal 1 , @list.indexed_length
|
||||
assert_equal 1 , @list.internal_object_get(Parfait::LAYOUT_INDEX + 1)
|
||||
end
|
||||
def test_list_inspect
|
||||
@list.set(1,1)
|
||||
|
@ -5,6 +5,7 @@ class TestMeta < MiniTest::Test
|
||||
def setup
|
||||
@space = Register.machine.boot.space
|
||||
@try = @space.create_class(:Try , :Object).meta
|
||||
puts @try.class
|
||||
end
|
||||
|
||||
def foo_method for_class = :Try
|
||||
@ -12,17 +13,13 @@ class TestMeta < MiniTest::Test
|
||||
::Parfait::Method.new @space.get_class_by_name(for_class) , :foo , args
|
||||
end
|
||||
|
||||
def pest_meta
|
||||
def test_meta
|
||||
assert @try
|
||||
end
|
||||
def pest_meta_object
|
||||
def test_meta_object
|
||||
assert @space.get_class_by_name(:Object).meta
|
||||
end
|
||||
|
||||
def pest_new_superclass
|
||||
assert_equal Parfait::MetaClass , @try.super_class.class
|
||||
assert_equal :MetaObject , @try.super_class.name
|
||||
end
|
||||
def pest_new_methods
|
||||
assert_equal @try.method_names.class, @try.instance_methods.class
|
||||
assert_equal @try.method_names.get_length , @try.instance_methods.get_length
|
||||
|
Reference in New Issue
Block a user