2015-11-10 18:08:48 +01:00
|
|
|
require_relative 'helper'
|
|
|
|
|
|
|
|
class TestwordRT < MiniTest::Test
|
|
|
|
include RuntimeTests
|
|
|
|
|
|
|
|
def test_len
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = " "
|
|
|
|
return w.char_length
|
|
|
|
HERE
|
|
|
|
check_return 1
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_space
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = " "
|
|
|
|
return w.char_at(1)
|
|
|
|
HERE
|
|
|
|
assert_equal 32 , " ".codepoints[0] # just checking
|
|
|
|
check_return 32
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_add_doesnt_change1
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = " "
|
2015-11-11 19:36:07 +01:00
|
|
|
w.push_char(48)
|
2015-11-10 18:08:48 +01:00
|
|
|
return w.char_at(1)
|
|
|
|
HERE
|
2015-11-11 19:36:07 +01:00
|
|
|
check_return 32
|
2015-11-10 18:08:48 +01:00
|
|
|
end
|
|
|
|
def test_after_add_get_works
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = " "
|
2015-11-11 19:36:07 +01:00
|
|
|
w.push_char(48)
|
2015-11-10 18:08:48 +01:00
|
|
|
return w.char_at(2)
|
|
|
|
HERE
|
2015-11-11 19:36:07 +01:00
|
|
|
check_return 48
|
2015-11-10 18:08:48 +01:00
|
|
|
end
|
2015-11-11 19:36:07 +01:00
|
|
|
|
2015-11-10 18:08:48 +01:00
|
|
|
def test_after_add_length_works
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = " "
|
|
|
|
w.push_char(32)
|
|
|
|
return w.char_length
|
|
|
|
HERE
|
|
|
|
check_return 2
|
|
|
|
end
|
2015-11-11 19:36:07 +01:00
|
|
|
|
|
|
|
def test_get1
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = "12345"
|
|
|
|
return w.char_at(1)
|
|
|
|
HERE
|
|
|
|
check_return 49
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_get2
|
|
|
|
@string_input = <<HERE
|
|
|
|
Word w = "12345"
|
|
|
|
return w.char_at(2)
|
|
|
|
HERE
|
|
|
|
check_return 50
|
|
|
|
end
|
2015-11-10 18:08:48 +01:00
|
|
|
end
|