Ich habe eine Spezifikation zum Testen eine Steuerung wie untenBenutzeranmeldung beim Testen mit rspec und authlogic
require 'spec_helper'
describe ProductsController do
setup :activate_authlogic
describe "user not logged in" do
it "should not GET index" do
get :index
response.should redirect_to(login_path)
end
end
describe "user logged in" do
before(:each) do
UserSession.create :username => "rohit", :password => "test123"
end
it "should GET index" do
get :index
response.should redirect_to(products_path)
end
end
end
ich auch diese Zeile in spec_helper.rb verwendet habe
require "authlogic/testcase"
Der Test für „user nicht eingeloggt "aber für" angemeldeten Benutzer "scheitert mit
'ProductsController user is logged in should GET index' FAILED
expected redirect to "/products", got no redirect
Warum bekomme ich eine No-Umleitung in dem "Benutzer angemeldet" -Beispiel, zumindest sollte es irgendwo umgeleitet werden. Ich habe sogar versucht, redirect_to (login_path) anstelle von redirect_to (products_path) zu verwenden, obwohl ich den gleichen Fehler bekam. Warum das? – Rohit
weil Sie nur die Seite '/ Produkte' fragen, wenn es keine Redirect_to etwas anderes in diesem Controller gibt, ist es normal. Setzen Sie Ihren Produktions-Controller, wenn Sie mehr Informationen wünschen – shingara
also, im Grunde, was sagst du. Sollte ich die redirect_to Zeile aus der Spezifikation entfernen – Rohit