2009-03-19 2 views
2

Ich habe ein RSpec-Tutorial auf einer meiner Maschinen verfolgt, in der Hoffnung, mehr über BDD und TDD zu erfahren. Mein Setup war mit Rails 2.2.2 und Rspec 1.1.12Wie führe ich meine Spezifikationen mit der vorherigen Version von Rspec aus?

Heute Nacht entschied ich mich, auf meinem primären Computer weiter zu gehen und meinen Code von meinem tragbaren auf meinen Desktop zu verschieben. Ohne RSpec habe ich den Edelstein installiert. . .

sudo gem install rspec 
sudo gem install rspec-rails 

Streit und Calumny! Die neue Version von Rspec installiert! 1.2.0! Und jetzt versagen meine Tests überall! Während ich vorhabe, die aktuellste Version zu verfolgen und zu lernen, möchte ich wirklich das, was vom Tutorial übrig ist, vervollständigen, ohne von vorne beginnen zu müssen. Ich frage mich. Gibt es eine Möglichkeit zu installieren und anzugeben, dass ich meinen Code gegen den vorherigen Rspec 1.2.12 ausführen möchte?

Antwort

3

Sie können mit der angegebenen VERSION deinstallieren und neu installieren. Erklärt here.

+0

Meiner Erfahrung nach ist dies der einzige Weg, es zu tun ... rspec hat einige Abhängigkeiten, die die neueste Version "aktiv" oder so etwas drehen. Nicht 100% auf die Interna. Aber die Deinstallation wird behoben. –

3

Wenn Sie mehr als eine Version auf Ihrem Computer haben, denn wenn du vielleicht 2.2 Schienen-App und eine 2,3 Schienen App dann in Ihrer environment.rb Datei angeben sollten:

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

und Ihre Die Anwendung verwendet diese Edelstein-Spezifikation und den zugehörigen Rspec-Rails-Edelstein. Dadurch können Sie den entsprechenden Edelstein für jede Anwendung verwenden.

2

Zusätzlich zu den rspec und rspec-Schienen Versionen in meinen Umgebungen/test.rb Datei zu spezifizieren, fügte ich script/ vor spec, zB:

script/spec spec/controllers/treasury_accounts_controller.rb 

nach diesem Fehler zu erhalten:

/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 
Verwandte Themen