Pergunta

Tenho vindo a acompanhar um tutorial RSpec em uma de minhas máquinas, na esperança de aprender mais sobre BDD e TDD. Minha configuração foi com Rails 2.2.2 e 1.1.12 Rspec

Esta noite eu decidi continuar na minha máquina primária e mexeu no meu código do meu portátil para o meu desktop. Não ter RSpec, eu instalei o gem. . .

sudo gem install rspec
sudo gem install rspec-rails

Strife e Calúnia! A nova versão do Rspec instalado! 1.2.0! E agora meus testes estão falhando em todo o lugar! Enquanto Eu tenho a intenção de acompanhar e aprender o mais versão atualizada, eu realmente gostaria de completar o que resta do tutorial sem ter que começar de novo. Estou pensando. Existe uma maneira de instalar e especificar que gostaria de executar o meu código contra o anterior Rspec, 1.2.12?

Foi útil?

Solução

Você pode desinstalar e reinstalar com versão especificada. Explicou aqui .

Outras dicas

Se você quiser ter mais de uma versão no seu computador, para se talvez você deve ter um rails aplicativo 2.2 e um 2.3 rails aplicativo, em seguida no seu arquivo environment.rb especificar:

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

e sua aplicação vai usar essa especificação gem eo rspec-rails gem que vai com ele. Isso permitirá que você use a jóia adequado para cada appliction.

Além de especificar o rspec e rspec-rails versões no meu arquivo ambientes / test.rb, acrescentei script/ na frente de spec, por exemplo:.

script/spec spec/controllers/treasury_accounts_controller.rb

para passar por este erro:

/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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top