2018-03-04 10:09:32 -05:00
|
|
|
require_relative '../../spec_helper'
|
2017-05-07 08:04:49 -04:00
|
|
|
require 'abbrev'
|
|
|
|
|
|
|
|
#test both Abbrev.abbrev and Array#abbrev in
|
|
|
|
#the same manner, as they're more or less aliases
|
|
|
|
#of one another
|
|
|
|
|
2019-07-27 06:40:09 -04:00
|
|
|
[["Abbrev.abbrev", -> a { Abbrev.abbrev(a)}],
|
|
|
|
["Array#abbrev", -> a { a.abbrev}]
|
2017-05-07 08:04:49 -04:00
|
|
|
].each do |(name, func)|
|
|
|
|
|
|
|
|
describe name do
|
|
|
|
it "returns a hash of all unambiguous abbreviations of the array of strings passed in" do
|
|
|
|
func.call(['ruby', 'rules']).should == {"rub" => "ruby",
|
|
|
|
"ruby" => "ruby",
|
|
|
|
"rul" => "rules",
|
|
|
|
"rule" => "rules",
|
|
|
|
"rules" => "rules"}
|
|
|
|
|
|
|
|
func.call(["car", "cone"]).should == {"ca" => "car",
|
|
|
|
"car" => "car",
|
|
|
|
"co" => "cone",
|
|
|
|
"con" => "cone",
|
|
|
|
"cone" => "cone"}
|
|
|
|
end
|
|
|
|
|
|
|
|
it "returns an empty hash when called on an empty array" do
|
|
|
|
func.call([]).should == {}
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|