rubyx/test/vool/test_hash_statement.rb

36 lines
956 B
Ruby
Raw Normal View History

require_relative "helper"
2017-04-02 09:57:39 +02:00
module Vool
class HashArray < MiniTest::Test
def test_empty
lst = RubyCompiler.compile( "{}")
2017-04-02 09:57:39 +02:00
assert_equal HashStatement , lst.class
end
def test_empty_length
lst = RubyCompiler.compile( "{}")
2017-04-02 09:57:39 +02:00
assert_equal 0 , lst.length
end
def test_one
lst = RubyCompiler.compile( "{ 1 => 2}")
2017-04-02 09:57:39 +02:00
assert_equal HashStatement , lst.class
end
def test_one_length
lst = RubyCompiler.compile( "{ 1 => 2}")
2017-04-02 09:57:39 +02:00
assert_equal 1 , lst.length
end
def test_one_pair
lst = RubyCompiler.compile( "{ 1 => 2}")
2017-04-02 09:57:39 +02:00
assert_equal 1 , lst.hash.keys.first.value
end
def test_two_length
lst = RubyCompiler.compile( "{ sym: :works , 'string_too' => 2}")
2017-04-02 09:57:39 +02:00
assert_equal 2 , lst.length
end
def test_two_key_one
lst = RubyCompiler.compile( "{ sym: :works , 'string_too' => 2}")
2017-04-02 09:57:39 +02:00
assert_equal :sym , lst.hash.keys.first.value
end
end
end