ruby--ruby/test/test_abbrev.rb

56 lines
1.3 KiB
Ruby

# frozen_string_literal: true
require 'test/unit'
require 'abbrev'
class TestAbbrev < Test::Unit::TestCase
def test_abbrev
words = %w[summer winter win ruby rules]
assert_equal({
"rub" => "ruby",
"ruby" => "ruby",
"rul" => "rules",
"rule" => "rules",
"rules" => "rules",
"s" => "summer",
"su" => "summer",
"sum" => "summer",
"summ" => "summer",
"summe" => "summer",
"summer" => "summer",
"win" => "win",
"wint" => "winter",
"winte" => "winter",
"winter" => "winter",
}, words.abbrev)
assert_equal({
"rub" => "ruby",
"ruby" => "ruby",
"rul" => "rules",
"rule" => "rules",
"rules" => "rules",
}, words.abbrev('ru'))
assert_equal words.abbrev, Abbrev.abbrev(words)
assert_equal words.abbrev('ru'), Abbrev.abbrev(words, 'ru')
end
def test_abbrev_lf
words = ["abc", "abc\nd", "de"]
assert_equal({
"abc" => "abc",
"abc\n" => "abc\nd",
"abc\nd" => "abc\nd",
"d" => "de",
"de" => "de",
}, words.abbrev)
assert_equal({
"d" => "de",
"de" => "de",
}, words.abbrev('d'))
end
end