Где написать тест-кейс для этого файла в инициализаторах в rails? - PullRequest
4 голосов
/ 28 февраля 2012

Я создал файл common.rb в папке Intializer в приложении rails 2.x.Код ниже

def handle_exception &block
  begin
    yield block
  rescue Exception => ex
    logger.error(ex)
    HoptoadNotifier.notify(ex)
  end
end

Для вышесказанного я хочу написать контрольный пример.Я думаю, это должно быть в функциональном тесте.Если это так.Я не знаю, как мне его назвать, значит я запутался (имя контроллера << Base).Рельсы запускают этот тестовый случай, как и другие тесты контроллера?Или нам нужно добавить это где-нибудь?Поскольку в приведенном выше коде нет класса, который унаследован от контроллера и т. Д., Я добавлю больше информации, если вам не понятен мой вопрос. </p>

1 Ответ

1 голос
/ 29 февраля 2012

Я предполагаю, что handle_exception - это глобальная функция, поэтому вы можете просто протестировать ее с помощью RSpec следующим образом:

require 'spec_helper'

describe "common" do

  it "handles exceptions" do
    logger.should_receive( :error )
    HoptaodNotifier.should_receive( :notify )

    handle_exception { raise Exception.new( "This is the error") }
  end

end
...