more and better tests
especially vool
This commit is contained in:
@ -3,6 +3,26 @@ require_relative "helper"
|
||||
|
||||
module Vool
|
||||
class TestClassStatement < MiniTest::Test
|
||||
include ScopeHelper
|
||||
def setup
|
||||
Parfait.boot!({})
|
||||
ruby_tree = Ruby::RubyCompiler.compile( as_test_main("a = 5") )
|
||||
@vool = ruby_tree.to_vool
|
||||
end
|
||||
def test_class
|
||||
assert_equal ClassStatement , @vool.class
|
||||
end
|
||||
def test_method
|
||||
assert_equal MethodStatement , @vool.body.first.class
|
||||
end
|
||||
def test_create_class
|
||||
assert_equal Parfait::Class , @vool.create_class_object.class
|
||||
end
|
||||
def test_create_class
|
||||
assert_equal :Test , @vool.create_class_object.name
|
||||
end
|
||||
end
|
||||
class TestClassStatementCompile < MiniTest::Test
|
||||
include VoolCompile
|
||||
|
||||
def setup
|
||||
|
29
test/vool/test_method_statement.rb
Normal file
29
test/vool/test_method_statement.rb
Normal file
@ -0,0 +1,29 @@
|
||||
require_relative "helper"
|
||||
|
||||
module Vool
|
||||
class TestMethodStatement < MiniTest::Test
|
||||
include VoolCompile
|
||||
|
||||
def setup
|
||||
Parfait.boot!(Parfait.default_test_options)
|
||||
ruby_tree = Ruby::RubyCompiler.compile( as_test_main("a = 5") )
|
||||
@clazz = ruby_tree.to_vool
|
||||
end
|
||||
def method
|
||||
@clazz.body.first
|
||||
end
|
||||
def test_setup
|
||||
assert_equal ClassStatement , @clazz.class
|
||||
assert_equal Statements , @clazz.body.class
|
||||
assert_equal MethodStatement , method.class
|
||||
end
|
||||
def test_class
|
||||
assert_equal Parfait::Class , @clazz.create_class_object.class
|
||||
end
|
||||
def test_method
|
||||
clazz = @clazz.create_class_object
|
||||
assert_equal Parfait::VoolMethod , method.make_method(clazz).class
|
||||
end
|
||||
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user