условный тег в примерах Rspec

#rspec

#rspec

Вопрос:

мой пример rspec в настоящее время выглядит следующим образом

 describe Zipcode do
  before :each do
    # comment out to use live web service
    @mocking_geokit = true

    if @mocking_geokit
      MultiGeocoder.stub( :geocode ) { mock( Geokit::GeoLoc, :zip => '77005', :city => 'Houston', :state => 'TX', :success => true ) }
      MultiGeocoder.stub( :geocode ).with('00000') { mock( :success => false ) }
      MultiGeocoder.stub( :geocode ).with('123456') { mock( :success => false ) }
    end
  end
  

Я хочу изменить его так, чтобы @mocking_geokit устанавливался на основе @tag. Я предпочитаю не иметь 2 отдельных набора примеров, поскольку тесты одинаковы, только изменения в насмешке. Спасибо.

Ответ №1:

Вы заглядывали в видеомагнитофон? Это потрясающе.

Ответ №2:

Не совсем уверен, что понимаю ваш вопрос (вы хотите протестировать одно и то же дважды, один раз с заглушками и один раз без? Разве это не избыточно?), Но вы, вероятно, можете выполнить все, что захотите, с помощью фильтров и / или пользовательских настроек.

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

1. Я хочу запустить один и тот же набор примеров с использованием веб-службы Live и без нее. С mocks быстрее, без mocks более полно. Я согласен, что могу «вероятно», вопрос в том, как.