2013-07-15 5 views
0

Je suis assez nouveau à ruby, et la société pour laquelle je travaille nous fait faire des tests de spécifications locales pour notre code avant de l'enregistrer. Jusqu'à il y a quelques jours, mes tests de spécification fonctionnaient tout à fait bien, mais je récemment mis à jour à partir de la valeur par défaut OS X Ruby (1.8.7) à 2.0.0, et « spec râteau » échoue maintenant avec la sortie ci-dessous, j'ai abrégé les informations pertinentes:Rake spec ne fonctionne pas avec ruby ​​mis à jour

/Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-puppet-0.1.5/lib/rspec-puppet.rb:1:in `require': cannot load such file -- puppet (LoadError) 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-puppet-0.1.5/lib/rspec-puppet.rb:1:in `<top (required)>' 
from /Users/Jordan/edmunds_dev/spec/spec_helper.rb:1:in `require' 
from /Users/Jordan/edmunds_dev/spec/spec_helper.rb:1:in `<top (required)>' 
from /Users/Jordan/edmunds_dev/modules/apache/spec/classes/apache_spec.rb:1:in `require' 
from /Users/Jordan/edmunds_dev/modules/apache/spec/classes/apache_spec.rb:1:in `<top (required)>' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `load' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `block in load_spec_files' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `map' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core- 2.11.1/lib/rspec/core/configuration.rb:780:in `load_spec_files' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core- 2.11.1/lib/rspec/core/command_line.rb:22:in `run' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core-2.11.1/lib/rspec/core/runner.rb:69:in `run' 
from /Users/Jordan/.rvm/gems/ruby-2.0.0-p247/gems/rspec-core-2.11.1/lib/rspec/core/runner.rb:8:in `block in autorun' 
rake aborted! 
/Users/Jordan/.rvm/rubies/ruby-2.0.0-p247/bin/ruby -S rspec 

Ce que j'ai essayé:

réinstallant rubis, et toutes les gemmes pertinentes

Mise à jour

rubygems, puis de réinstaller les pierres précieuses pertinentes

regardant la Rakefile

Ce que je vais faire:

réinstaller mon système d'exploitation ou tout simplement aller ballistique tout supprimer qui a rubis au nom et réinstallez-le.

+0

Utilisez-vous Bundler? Ou un autre gestionnaire de gemme? –

+0

Oui, j'utilise actuellement bundler. – addicted2unix

+0

Ok, bon à savoir. Vérifiez mon fil de réponse pour plus de détails re: bundler. –

Répondre

1

Il semble que puppet n'est pas encore installé pour ruby ​​2.0.x. Vous l'avez probablement installé pour 1.8.7. Toutes les gemmes doivent être installées contre la dernière version de ruby.

Si vous utilisez Bundler, assurez-vous que puppet est dans votre Gemfile:

source 'https://rubygems.org' 

gem 'puppet' 

# Once the issue is ironed out, place this and other spec-related 
# gems in the test group 
gem 'rspec-puppet' 

Ensuite, assurez-vous Bundler charge l'environnement par l'intermédiaire bundle exec rake spec.

Ou l'installer manuellement, en utilisant:

gem install puppet 

Découvrez the rspec-puppet documentation pour plus de détails.

+0

Désolé, je devrais avoir mentionné que j'ai essayé de le faire, malheureusement, après avoir exécuté 'gem installer marionnette' Il vient avec /Users/Jordan/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0. 0/rubygems/dependency.rb: 296: dans 'to_specs ': Impossible de trouver' marionnette '(> = 0) parmi 35 gemmes totales (Gem :: LoadError) \t from /Users/Jordan/.rvm/ rubies/ruby-2.0.0-p247/lib/ruby ​​/ site_ruby/2.0.0/rubygems/dependency.rb: 307: dans 'to_spec ' \t depuis /Users/Jordan/.rvm/rubies/ruby-2.0.0 -p247/lib/ruby ​​/ site_ruby/2.0.0/rubygems/core_ext/kernel_gem.rb: 47: dans 'gem ' \t de /Users/Jordan/.rvm/rubies/ruby-2.0.0-p247/bin/ marionnette: 22: dans '

' – addicted2unix

+0

Ok, lancez' bundle list' pour voir ce que le bundler gems est en train de charger. En supposant que 'puppet' est là, exécutez' bundle exec rake spec'. Si 'marionnette' n'est pas là, ajoutez-la au Gemfile et lancez 'bundle'. –

+0

Ok, la plupart de mes problèmes ont été résolus en supprimant 'Gemfile.lock' et en exécutant' bundle install' à nouveau. – addicted2unix

Questions connexes