rubyx/test/risc/test_collector.rb

39 lines
1.0 KiB
Ruby
Raw Normal View History

2016-12-31 20:05:19 +01:00
require_relative "../helper"
module Risc
2016-12-31 20:05:19 +01:00
class TestCollector < MiniTest::Test
2018-03-26 18:43:03 +02:00
def setup
2019-02-08 22:03:23 +01:00
Parfait.boot!(Parfait.default_test_options)
Risc.boot!
@linker = Mom::MomCompiler.new.translate(:arm)
2018-03-26 18:43:03 +02:00
end
2016-12-31 20:05:19 +01:00
def test_simple_collect
objects = Collector.collect_space(@linker)
assert ((400 < objects.length) or (450 > objects.length)) , objects.length.to_s
2016-12-31 20:05:19 +01:00
end
2018-03-26 18:43:03 +02:00
def test_collect_all_types
Collector.collect_space(@linker).each do |objekt , position|
2018-03-26 18:43:03 +02:00
next unless objekt.is_a?( Parfait::Type )
assert Parfait.object_space.get_type_for( objekt.hash ) , objekt.hash
end
end
def test_allowed_types
Collector.collect_space(@linker).each do |objekt , position|
next if objekt.is_a?( Parfait::Object )
next if objekt.is_a?( Symbol )
assert false
end
end
def test_positions
Collector.collect_space(@linker).each do |objekt , position|
assert_equal Position , position.class
assert !position.valid?
end
end
2016-12-31 20:05:19 +01:00
end
end