2017-06-16 3 views
0

Ich habe den folgenden Fehler beim Ausführen von rspec.Rspec Bundler: Befehl konnte nicht geladen werden: rspec

bundler: failed to load command: rspec (/home/bastien/.rbenv/versions/2.3.1/bin/rspec) 
NameError: uninitialized constant CarrierWave::Storage::Fog 

Dies ist die "Prüfung Teil" meiner gemfile

group :development, :test do 
gem 'rspec' 
gem 'rspec-rails' 
gem 'factory_girl_rails' 
gem 'capybara' 
gem 'selenium-webdriver' 
gem 'database_cleaner' 
gem 'shoulda-matchers' 
gem 'spring' 
end 

ich viele Dinge versucht haben, dieses Problem zu beheben, einschließlich das Hinzufügen sowohl zu

rails_helper.rb 
spec_helper.rb 

Die verschiedenen erfordern

require 'spec_helper' 
require 'rails_helper' 
require 'rspec/rails' 
require 'carrierwave' 
require "rails_helper" 
require 'rails/all' 
require 'rubygems' 

EDIT

Carrierwave initializer Datei

CarrierWave.configure do |config| 
config.fog_credentials = { 
provider:    'AWS', 
aws_access_key_id:  ENV['S3_KEY'], 
aws_secret_access_key: ENV['S3_SECRET'], 
region: 'us-east-1' 

} 

if Rails.env.test? || Rails.env.cucumber? 
CarrierWave.configure do |config| 
config.storage   = :file 
config.enable_processing = false 
end 
end 

config.cache_dir  = "#{Rails.root}/tmp/uploads" 
config.fog_directory = ENV['S3_BUCKET_NAME'] 
end 

Rspec immer noch nicht funktioniert, während die Anwendung funktioniert gut. Würde jemand eine Idee davon haben, wie ich dieses Problem lösen kann? Gibt es eine schnelle und schmutzige Lösung, mit der ich die anderen Teile der App testen kann, indem ich carrierwave-bezogene Elemente ausschließe? Vielen Dank.

+0

im Uploader-Ordner (doc_uploader.rb) erklärt wurde, um das Problem zu erzeugen Haben Sie versucht, google 'uninitialisierte Konstante CarrierWave :: Storage :: Fog' zu googeln? Viele Optionen: Gemfile, CarrierWave Initialisierer, jeder Ort, an dem Sie CarrierWave/Fog abhängig von Env konfigurieren. –

+0

Hallo Bastien. Wie sieht dein 'initializers/carrierwave.rb' aus? – Belder

Antwort

0

Die Datei war

Die Testumgebung nicht richtig mit

if Rails.env.development? 
    storage :file 
else 
    storage :fog 
end 

, die ich ändern musste in

if Rails.env.development? || Rails.env.test? 
    storage :file 
else 
    storage :fog 
end 
Verwandte Themen