fixes missing string tests and expression/transformation

This commit is contained in:
Torsten Ruger
2014-04-29 11:17:19 +03:00
parent 9c16d81ad6
commit 7dfde45373
9 changed files with 53 additions and 3 deletions

1
test/runners/hello.rb Normal file
View File

@ -0,0 +1 @@
puts( "hello world" )

View File

@ -32,6 +32,15 @@ class TestAst < MiniTest::Test
check
end
def test_string
@input = <<HERE
"hello"
HERE
@expected = Parser::StringExpression.new('hello')
@parser = @parser.string
check
end
def test_one_argument
@input = '(42)'
@expected = { :argument_list => Parser::IntegerExpression.new(42) }

View File

@ -45,6 +45,15 @@ class ParserTest < MiniTest::Test
check
end
def test_string
@input = <<HERE
"hello"
HERE
@expected = {:string=>"hello"}
@parser = @parser.string
check
end
def test_one_argument
@input = '(42)'
@expected = {:argument_list => {:argument => {:integer => '42'}} }
@ -70,6 +79,18 @@ class ParserTest < MiniTest::Test
check
end
def test_function_call_string
@input = <<HERE
puts( "hello")
HERE
@expected = {:function_call => {:name => 'baz' },
:argument_list => [{:argument => {:integer => '42'}},
{:argument => {:name => 'foo'}}]}
@parser = @parser.function_call
check
end
def test_expression_else
@input = <<HERE
4

View File

@ -25,6 +25,8 @@ class TestRunner < MiniTest::Test
#link
# execute
# check result ?
puts string
puts " "
puts tree.inspect
end

View File

@ -26,6 +26,13 @@ class TransformTest < MiniTest::Test
check
end
def test_string
@input = {:string=>"hello"}
@expected = Parser::StringExpression.new('hello')
@parser = @parser.string
check
end
def test_argument_list
@input = {:argument_list => [{:argument => {:integer => '42'}},
{:argument => {:name => 'foo'}}]}