start a new ruby layer to do the to_vool conversion
the "normalization" is getting more and more complicated and is not tested And it seems i really don't like working with the untyped ast
This commit is contained in:
36
test/ruby/test_hash_statement.rb
Normal file
36
test/ruby/test_hash_statement.rb
Normal file
@ -0,0 +1,36 @@
|
||||
require_relative "helper"
|
||||
|
||||
module Ruby
|
||||
class HashArrayX < MiniTest::Test
|
||||
include RubyTests
|
||||
|
||||
def test_empty
|
||||
lst = compile( "{}")
|
||||
assert_equal HashStatement , lst.class
|
||||
end
|
||||
def test_empty_length
|
||||
lst = compile( "{}")
|
||||
assert_equal 0 , lst.length
|
||||
end
|
||||
def test_one
|
||||
lst = compile( "{ 1 => 2}")
|
||||
assert_equal HashStatement , lst.class
|
||||
end
|
||||
def test_one_length
|
||||
lst = compile( "{ 1 => 2}")
|
||||
assert_equal 1 , lst.length
|
||||
end
|
||||
def test_one_pair
|
||||
lst = compile( "{ 1 => 2}")
|
||||
assert_equal 1 , lst.hash.keys.first.value
|
||||
end
|
||||
def test_two_length
|
||||
lst = compile( "{ sym: :works , 'string_too' => 2}")
|
||||
assert_equal 2 , lst.length
|
||||
end
|
||||
def test_two_key_one
|
||||
lst = compile( "{ sym: :works , 'string_too' => 2}")
|
||||
assert_equal :sym , lst.hash.keys.first.value
|
||||
end
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user