Ich habe eine RSPEZ-Test zum Testen einer Controller-Aktion.Testen der Controller-Umleitung in RSpec
class SalesController < ApplicationController
def create
# This redirect sends the user to SalesController#go_to_home
redirect_to '/go_to_home'
end
def go_to_home
redirect_to '/'
end
end
Mein Controller Test sieht aus wie
RSpec.describe SalesController, type: :controller do
include PathsHelper
describe 'POST create' do
post :create
expect(response).to redirect_to '/'
end
end
Allerdings, wenn ich den Test ausführen es mir, dass sagt:
Expected response to be a redirect to <http://test.host/> but was a redirect to <http://test.host/go_to_home>.
Expected "http://test.host/" to be === "http://test.host/go_to_home".
/go_to_home
wird der Benutzer zu SalesController # Springen_zum_Anfang senden. Wie kann ich testen, ob die Antwort letztendlich zur Homepage mit der URL http://test.host/
führt?
direkt umleiten werde ich meine Frage klären. '/ go_to_home' sendet den Benutzer an SalesController # go_to_home. – jason328
Nein, ich rufe nur go_to_home von SalesController # create an. Verstehe, dass ich dieses Beispiel vereinfacht habe, so dass eine Menge Logik fehlt. – jason328