ruby-如何使用';由另一个方法填充的';他的头发被剪短了
我有一些测试,其中我用ruby-如何使用';由另一个方法填充的';他的头发被剪短了,ruby,rspec,stub,Ruby,Rspec,Stub,我有一些测试,其中我用 dictionary.stub(:words).and_return (%w{cat,dog,fish,plane,rock,dig,dug,cut,cuts,put,puts,putting,ruby,use,GO,IT}) 这样,我就不必使用字典。加载系统
dictionary.stub(:words).and_return
(%w{cat,dog,fish,plane,rock,dig,dug,cut,cuts,put,puts,putting,ruby,use,GO,IT})
这样,我就不必使用字典。加载系统
方法来填充@words
,我只需将words
方法剔除即可
现在,我想测试另一个名为的方法,它包含\u word(word)
:
但是问题是
@words
通常由字典.load\u system\u Dictionary
方法填充,但我不想使用它,因为它有90k条记录,但没有文件.open(words\u文件)。每个{words |@words如果包含
是字典
方法,您可以这样做
关于实例变量集
def contains_word(word)
@words.map(&:upcase).join.include?(word.upcase)
end
dictionary.load_system_dictionary
dictionary.stub(:words).and_return
(%w{cat,dog,fish,plane,rock,dig,dug,cut,cuts,put,puts,puttingzaq1,ruby,use,GO,IT})
Failure/Error: expect(dictionary.contains_word('IT')).to be true
expected #<TrueClass:2> => true
got #<FalseClass:0> => false
let(:dictionary) {Dictionary.new}
dictionary.instance_variable_set(:@words, your_words_array)