move argument and parameter tests to new framework

This commit is contained in:
Torsten Ruger
2014-04-29 16:22:39 +03:00
parent 90e2658bc0
commit 1af45334b7
5 changed files with 57 additions and 69 deletions

View File

@ -0,0 +1,37 @@
require_relative "helper"
class TestArguments < MiniTest::Test
# include the magic (setup and parse -> test method translation), see there
include ParserHelper
def test_one_argument
@string_input = '(42)'
@parse_output = {:argument_list => [{:argument => {:integer => '42'}}] }
@transform_output = [Parser::IntegerExpression.new(42) ]
@parser = @parser.argument_list
end
def test_argument_list
@string_input = '(42, foo)'
@parse_output = {:argument_list => [{:argument => {:integer => '42'}},
{:argument => {:name => 'foo'}}]}
@transform_output = [Parser::IntegerExpression.new(42), Parser::NameExpression.new('foo')]
@parser = @parser.argument_list
end
def test_parmeter
@string_input = "(foo)"
@parse_output = {:parmeter_list => [{:parmeter => { :name => "foo"}} ]}
@transform_output = [Parser::NameExpression.new('foo')]
@parser = @parser.parmeter_list
end
def test_parmeter_list
@string_input = "( foo , bar)"
@parse_output = {:parmeter_list => [{:parmeter => { :name => "foo"}},
{:parmeter => { :name => "bar"}} ]}
@transform_output = [Parser::NameExpression.new('foo') , Parser::NameExpression.new('bar')]
@parser = @parser.parmeter_list
end
end

View File

@ -4,21 +4,21 @@ class TestBasic < MiniTest::Test
# include the magic (setup and parse -> test method translation), see there
include ParserHelper
def parse_number
def test_number
@string_input = '42 '
@parse_output = {:integer => '42'}
@transform_output = Parser::IntegerExpression.new(42)
@parser = @parser.integer
end
def parse_name
def test_name
@string_input = 'foo '
@parse_output = {:name => 'foo'}
@transform_output = Parser::NameExpression.new('foo')
@parser = @parser.name
end
def parse_string
def test_string
@string_input = <<HERE
"hello"
HERE