2017-02-06 3 views
0

MISE À JOUR: J'ai ajouté le contrôleur et je teste mon dossier gemmeChargeErreur: ne peut pas charger ce fichier - .../advertisement_controller_spec.rb

Je effectuer des essais sur ce contrôleur et je suis obtenir cette LoadError dont je ne peux pas comprendre d'où il vient. J'ai lancé d'autres tests dans mon application, donc je suis sûr que rspec fonctionne correctement.

D'autres problèmes qui peuvent être liés: Quand j'ai commencé mon serveur rails le terminal est retourné

Could not find proper version of railties (4.2.5) in any of the sources Run bundle install' to install missing gems.

J'ai couru paquet installer et le terminal retourné

An error occurred while installing pg (0.18.4), and Bundler cannot continue. Make sure that gem install pg -v '0.18.4' succeeds before bundling.

Toute aide est grandement appréciée!

spécifications du contrôleur:

require 'rails_helper' 
include RandomData 

RSpec.describe AdvertisementsController, type: :controller do 

    let (:my_ad) do 
    Advertisement.create(
    id: 1, 
    title: RandomData.random_sentence, 
    copy: RandomData.random_paragraph, 
    price: 99 
    ) 
    end 

    describe "GET #index" do 
    it "returns http success" do 
     get :index 
     expect(response).to have_http_status(:success) 
    end 

    it "assigns [my_ad] to @advertisements" do 
     get :index 
     expect(assigns(:advertisements)).to eq([my_ad]) 
    end 
    end 

end 

Trace de la pile:

4DV3R54RYs-MBP:Development D35TR0Y3R$ rspec spec/controllers/advertisement_controller_spec.rb 
/Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1435:in load: cannot load such file -- /Users/a666/Development/spec/controllers/advertisement_controller_spec.rb (LoadError) 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1435:in block in load_spec_files 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1433:in each 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1433:in load_spec_files 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:100:in setup 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:86:in run 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:71:in run 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:45:in invoke 
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/exe/rspec:4:in <top (required)> 
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/rspec:22:in load 
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/rspec:22:in <main> 
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks:15:in eval 
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks:15:in <main> 

Controller:

class AdvertisementsController < ApplicationController 
    def index 
    end 

    def show 
    end 

    def new 
    end 

    def create 
    end 
end 

Gemfile:

source 'https://rubygems.org' 

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 
gem 'rails', '4.2.5' 

# #1 
group :production do 
    gem 'pg' 
    gem 'rails_12factor' 
end 

# #2 
group :development do 
    gem 'sqlite3' 
end 

group :development, :test do 
    gem 'rspec-rails', '~> 3.0' 
end 

# Use SCSS for stylesheets 
gem 'sass-rails', '~> 5.0' 
# Use Uglifier as compressor for JavaScript assets 
gem 'uglifier', '>= 1.3.0' 
# Use CoffeeScript for .coffee assets and views 
gem 'coffee-rails', '~> 4.1.0' 
# Use jquery as the JavaScript library 
gem 'jquery-rails' 
gem 'turbolinks' 
gem 'bootstrap-sass' 
gem 'pry-rails' 
+0

avez-vous Postgres installé sur votre système –

+0

Il vous sera utile si vous pouviez inclure à la fois le gemfile et le contrôleur –

+0

Je ne sais pas si j'ai postgres mais l'un des derniers paquets que j'ai installés était postgresql. Je mettrai à jour le dossier de w/gem et le contrôleur. –

Répondre

0

Le nom de fichier semble singulier advertisement_controller_spec.rb alors que le nom de classe de spécification AdvertisementsController semble pluriel. Vérifiez si vous faites référence au bon nom de fichier.