Тест Rspec для помощника в моем случае

#ruby-on-rails #ruby-on-rails-3 #rspec #ruby-on-rails-3.1 #rspec2

#ruby-on-rails #ruby-on-rails-3 #rspec #ruby-on-rails-3.1 #rspec2

Вопрос:

Я разрабатываю приложение Rails. У меня есть помощник в app/helpers/ , это db_data_helper.rb .

Методы в этом db_data_helper в основном используются для выполнения файла дампа sql для загрузки данных в базу данных. И эти методы в помощнике используются в некоторой задаче Rake.

Некоторый пример кода помощника:

db_data_helper.rb:

 module DbDataHelper

  def self.load_data
       # CODE TO EXECUTE SQL dump files
  end
  ...
  ...
end
 

Теперь я хотел бы протестировать этого помощника в Rspec, но я не уверен, как реализовать тест в Rspec для такого помощника. Может ли кто-нибудь помочь мне в этом?

Комментарии:

1. Почему ваш помощник VIEW загружает данные в вашу базу данных? Используйте db/seed.rb , если вам нужно загрузить данные один раз. Или напишите хороший DbImporter где-нибудь еще. (например, в /lib или /app/my_app_name/db_importer.rb ).

Ответ №1:

Я бы просто создал класс в своем файле спецификации:

 class DummyDbDataHelper
  extend DbDataHelper
end

describe DummyDbDataHelper do
  it "tests the load_data method" do
    DummyDbDataHelper.load_data.should ...
  end
end
 

Комментарии:

1. Хотя это правильный ответ, это очень плохая практика для этого в помощнике представления.

2. @Ariejan: похоже, это не помощник для просмотра

3. @Ariejan: вы когда-нибудь видели пользовательский вспомогательный метод на уровне класса?