Как мне запустить мои спецификации с предыдущей версией Rspec? - PullRequest
2 голосов
/ 19 марта 2009

Я следовал учебному пособию по RSpec на одной из моих машин в надежде узнать больше о BDD и TDD. Моя установка была с Rails 2.2.2 и Rspec 1.1.12

Сегодня вечером я решил продолжить на своем основном компьютере и перенес свой код со своего портативного компьютера на мой рабочий стол. Не имея RSpec, я установил драгоценный камень. , ,

sudo gem install rspec
sudo gem install rspec-rails

Вражда и клевета! Установлена ​​новая версия Rspec! 1.2.0! И теперь мои тесты проваливаются повсюду! Несмотря на то, что я полностью намерен продолжить и изучить самую последнюю версию, я действительно хотел бы завершить то, что осталось от урока, без необходимости начинать заново. Мне интересно. Есть ли способ установить и указать, что я хотел бы запустить свой код с предыдущей Rspec, 1.2.12?

Ответы [ 3 ]

3 голосов
/ 20 марта 2009

Если вы хотите иметь более одной версии на вашем компьютере, например, если у вас должно быть приложение 2.2 rails и приложение 2.3 rails, укажите в файле environment.rb:

config.gem, 'rspec', :lib => 'spec', :version => '1.1.12'

и ваше приложение будет использовать эту спецификацию гема и гем rspec-rails, который идет с ним. Это позволит вам использовать соответствующий драгоценный камень для каждого приложения.

3 голосов
/ 19 марта 2009

Вы можете удалить и переустановить, указав VERSION. Объяснил здесь .

2 голосов
/ 16 августа 2011

Помимо указания версий rspec и rspec-rails в моем файле environment / test.rb, я добавил script/ перед spec, например ::

script/spec spec/controllers/treasury_accounts_controller.rb

чтобы обойти эту ошибку:

/opt/ror/ruby-ee-1.8.7-2011-03/lib/ruby/site_ruby/1.8/rubygems.rb:335:in `bin_path': can't find executable spec for rspec-2.1.0 (Gem::Exception)
    from /opt/ror/ruby/bin/spec:19
...