Ошибка 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?`

Я смущен ошибкой, потому что она, кажется, дает правильный ответ. Я был бы очень признателен, если бы кто-то потратил несколько минут, чтобы рассказать мне, что не так с моим кодом. Спасибо, тонны.

Ответы на вопрос(1)

Ваш ответ на вопрос