J'ai mis à jour mon application en utilisant config.gem
vers un Gemfile
avec bundler et j'ai remarqué que mes tests unitaires ont maintenant cessé de fonctionner. C'est un peu étrange et je ne suis pas tout à fait sûr de savoir par où commencer.rake ne pas exécuter les tests unitaires
Lorsque je lance rake test:units --trace
je peux voir mon environnement en cours d'installation et il répertorie les fichiers qu'il a l'intention d'exécuter, mais il ne fait que retourner.
Il fait la même chose si j'essaie d'exécuter un fichier individuel en utilisant quelque chose comme: rake -I"lib:test" test/unit/foo.rb
ou en utilisant autotest
.
Tout est très étrange. C'est comme si les fichiers étaient chargés mais les tests unitaires réels ne sont pas exécutés.
J'utilise shoulda
et fast_context
et je pensais que ce pourrait être le problème, mais si j'inclus un test unitaire en utilisant la syntaxe standard def test_
il ne comprend toujours courir, donc je ne pense pas que ce pas est ceux-ci.
Tous les conseils ou indications seraient grandement appréciés. J'ai l'impression de coder aveugle jusqu'à ce que je puisse les faire fonctionner à nouveau!
Alors, voici où je suis maintenant:
Mes raisons d'utiliser Bundler sont pour l'installation de dépendances sur Heroku et parce que je voulais utiliser une pierre précieuse source d'un git sur GitHub. Le long et le court de cela est que j'ai enlevé le preinitializer
pour bundler et suis retourné à l'aide de config.gem
. Pour contourner le fait que je ne peux pas utiliser un repo github en utilisant config.gem
j'ai poussé ma propre copie à rubygems. Était-ce le bon mouvement?
Voici le preinitializer.rb
begin
require "rubygems"
require "bundler"
rescue LoadError
raise "Could not load the bundler gem. Install it with `gem install bundler`."
end
if Gem::Version.new(Bundler::VERSION) <= Gem::Version.new("0.9.24")
raise RuntimeError, "Your bundler version is too old for Rails 2.3." +
"Run `gem install bundler` to upgrade."
end
begin
# Set up load paths for all bundled gems
ENV["BUNDLE_GEMFILE"] = File.expand_path("../../Gemfile", __FILE__)
Bundler.setup
rescue Bundler::GemNotFound
raise RuntimeError, "Bundler couldn't find some gems." +
"Did you run `bundle install`?"
end
Je ne sais pas comment le fichier .gems serait utile, car il est une chose que Heroku et je devrais chasser par git pour elle, mais voici mon gemfile.
source :gemcutter
gem 'rails', '2.3.9'
gem 'pg'
gem 'minitest'
gem 'RedCloth'
gem 'erubis'
#gem 'memcached'
gem 'daemons'
gem 'resque'
gem 'inherited_resources', '1.0.6'
gem 'clearance', '0.8.8'
gem 'acl9'
gem 'sprockets'
gem 'aws-s3'
gem 'paperclip', '2.3.1.1'
gem 'rmagick', '2.12.2'
gem 'jonnii-cheddargetter', '0.1.3'
gem 'attribute_normalizer'
gem 'formtastic', '1.1.0.beta'
gem 'will_paginate', '2.3.14'
gem 'hoptoad_notifier'
gem 'mixpanel_client'
gem 'sunspot'
gem 'websolr-sunspot_rails'
gem 'geokit'
gem 'ri_cal'
gem 'jonnii-yelp'
group :development, :test do
gem 'test-spec'
gem 'shoulda'
gem 'redgreen'
gem 'factory_girl'
gem 'populator'
gem 'faker'
gem 'ZenTest'
gem 'autotest-rails'
gem 'webrat'
gem 'cucumber'
gem 'cucumber-rails'
gem 'database_cleaner'
gem 'parallel'
gem 'hydra'
gem 'heroku'
gem 'taps'
gem 'ruby-prof'
gem 'treetop'
gem 'rspec'
gem 'rspec-rails'
end
voulez-vous afficher les lignes de preinitializer et le Gemfile (et ancien fichier .gems) – marshally
probablement pas bonne idée de pousser des versions séparées/personnelles sur rubygems ... cela tend à conduire à des versions anciennes et inutilisées de gemmes que personne ne conserve ou n'utilise. il suffit de les télécharger localement ou les installer sur votre système plutôt que de dépendre de l'hébergement de gemme. Juste mes pensées – Lukas
Hey, j'ai remarqué que vous utilisez inherited_resources et rails 2.3 avec bundler.J'ai de la difficulté à les faire travailler ensemble. Avez-vous déjà rencontré des problèmes avec cela? – taelor