Ошибка rspec: ожидается, что false ответит на `false?`
Я запускаю эту часть теста:
describe Dictionary do
before do
@d = Dictionary.new
end
it 'can check whether a given keyword exists' do
@d.include?('fish').should be_false
end
С этим кодом:
class Dictionary
def initialize
@hash = {}
end
def add(new_entry)
new_entry.class == String ? @hash[new_entry] = nil : new_entry.each { |noun, definition| @hash[noun] = definition}
end
def entries
@hash
end
def keywords
@hash.keys
end
def include?(word)
if @hash.has_key?(word)
true
else
false
end
end
end
Я не знаю, что я делаю неправильно, но мои тесты продолжают проваливаться и говорят следующее:
> 1) Dictionary can check whether a given keyword exists
> Failure/Error: @d.include?('fish').should be_false
> expected false to respond to `false?`
Я смущен ошибкой, потому что она, кажется, дает правильный ответ. Я был бы очень признателен, если бы кто-то потратил несколько минут, чтобы рассказать мне, что не так с моим кодом. Спасибо, тонны.