Je teste mes employees_controller, et dans mon test d'index pour les utilisateurs connectés, une erreur semble liée à mes relations de modèle.Erreur Rspec - relation entre l'utilisateur actuel et un autre modèle
Le test est la suivante:
describe "for signed-in user" do
before(:each) do
@user = test_sign_in(Factory(:user))
end
it "should have the right title" do
get :index
response.should have_selector('title', :content => "Employee List")
end
Je render_views ensemble. J'ai également chaque utilisateur lié à un emplacement, et l'affichage de l'index des employés est censé montrer les employés pour l'emplacement de l'utilisateur. Et à mon avis d'index, j'ai le code suivant pour afficher le nom de l'emplacement des employés:
<h1>Listing employees for <%= current_user.location.name %> </h1>
Quand je lance mon test, je reçois un message d'erreur qui contient « ActionView :: Template :: Erreur: nom de la méthode undefined pour nil: NilClass "
Dans mon fichier factories.rb, j'ai défini l'ID de l'emplacement de l'utilisateur sur un ID valide. Pourquoi current_user.location retourne-t-il zéro? Qu'est-ce qui me manque dans le test? Je vous remercie!
J'ai eu une macro de connexion dans un fichier d'aide de spécifications. Dans votre macro login_user, qu'est-ce que @ request.env ["concevoir.mapping"] =: utilisateur? – NicSlim
Je ne sais pas vraiment ce que ça fait (et je m'en soucie vraiment), mais c'est comme ça que le wiki officiel de l'idéologie l'utilise. – Spyros