2011-10-22 4 views
0

Il s'agit probablement d'une erreur très basique, mais j'apprends toujours. =)Échec du test du contrôleur RSpec pour une route simple

Mon routes.rb ne se compose que de

WebPortal::Application.routes.draw do 
    resources :categories 
end 

Si je comprends bien, cette carte doit (entre autres) /categories à CategoriesController.index. Ce contrôleur ressemble à

class CategoriesController < ApplicationController 
    def index 
    end 
end 

Le fichier de vue correspondant existe, et le serveur rails dessert cette page correctement. Mais mon test RSpec

describe CategoriesController do 
    describe "GET :index" do 
    it "should be succesful" do 
     get :index 
     response.should be_succes 
    end 
    end 
end 

échoue avec le message

Failure/Error: get :index 
    ActionController::RoutingError: 
    No route matches {:controller=>"categories"} 

Qu'est-ce que je fais mal ici?

Edit:

La commande rake routes donne

rake routes 
    categories GET /categories(.:format)   {:action=>"index", :controller=>"categories"} 
       POST /categories(.:format)   {:action=>"create", :controller=>"categories"} 
new_category GET /categories/new(.:format)  {:action=>"new", :controller=>"categories"} 
edit_category GET /categories/:id/edit(.:format) {:action=>"edit", :controller=>"categories"} 
    category GET /categories/:id(.:format)  {:action=>"show", :controller=>"categories"} 
       PUT /categories/:id(.:format)  {:action=>"update", :controller=>"categories"} 
       DELETE /categories/:id(.:format)  {:action=>"destroy", controller=>"categories"} 
+0

Qu'est-ce que vous obtenez en exécutant "rake routes" dans votre dossier de projet? – Rasmus

+0

@Rasmus: J'ai édité ma question avec la sortie. – Jens

+0

Je suis toujours nouveau et je regarde un projet simple que j'ai. La seule différence entre mon code et le vôtre est que j'ai index comme 'index' au lieu de: index dans la spécification. Mais que je ne pense pas le fera – Rasmus

Répondre

0

j'utilise la version 2.6.1 RSpec parce que je le Gemfile du tutoriel rails à http://ruby.railstutorial.org/. Passer à la version 2.7 a résolu mon problème.

+0

Version 2.6.1 quoi? à la version 2.7 de quoi? – pjmorse

+0

Oui, c'est un peu manquant. =) RSpec. – Jens

+0

Merci! Cette modification clarifie les choses. – pjmorse

Questions connexes