2017-04-02 18:13:14 +02:00
|
|
|
require_relative "helper"
|
2017-04-02 09:57:39 +02:00
|
|
|
|
2018-07-19 13:46:51 +02:00
|
|
|
module Ruby
|
2018-07-19 15:30:36 +02:00
|
|
|
class HashArray < MiniTest::Test
|
2018-06-29 21:46:39 +02:00
|
|
|
include RubyTests
|
2017-04-02 09:57:39 +02:00
|
|
|
|
|
|
|
def test_empty
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = compile( "{}")
|
2017-04-02 09:57:39 +02:00
|
|
|
assert_equal HashStatement , lst.class
|
|
|
|
end
|
|
|
|
def test_empty_length
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = compile( "{}")
|
2017-04-02 09:57:39 +02:00
|
|
|
assert_equal 0 , lst.length
|
|
|
|
end
|
|
|
|
def test_one
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = compile( "{ 1 => 2}")
|
2017-04-02 09:57:39 +02:00
|
|
|
assert_equal HashStatement , lst.class
|
|
|
|
end
|
|
|
|
def test_one_length
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = compile( "{ 1 => 2}")
|
2017-04-02 09:57:39 +02:00
|
|
|
assert_equal 1 , lst.length
|
|
|
|
end
|
|
|
|
def test_one_pair
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = compile( "{ 1 => 2}")
|
2017-04-02 09:57:39 +02:00
|
|
|
assert_equal 1 , lst.hash.keys.first.value
|
|
|
|
end
|
|
|
|
def test_two_length
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = 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
|
2018-06-29 21:46:39 +02:00
|
|
|
lst = 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
|