Für Controller, die davon ausgehen, dass ein Benutzer bereits authentifiziert wird, wie soll ich meine Tests schreiben?Wie schreibe ich rspec Tests für Controller, die Authentifizierung annehmen
Ich muss wahrscheinlich nicht die Login-Funktion testen, also ist es am besten, nur einen Benutzer oder was auch immer meine Authentifizierung übernimmt irgendwie injizieren?
Mein application_controller enthält ein Modul "current_user".
module CurrentUser
def self.included(base)
base.send :helper_method, :current_user
end
def current_user
... # returns a User model instance
end
end
class ApplicationController < ActionController::Base
include CurrentUser
Dann habe ich einen Admin-Controller, die eine before_action Methode, die sicherstellt, die current_user vorhanden ist.
Devise oder nicht Devise? 'include CurrentUser' lässt mich nicht nachdenken. – fbelanger
@fbelanger keine Geräte, benutzerdefinierte Authentifizierung. – Blankman
Wie überprüfen Sie, dass der Benutzer authentifiziert wurde? Könnten Sie nicht einfach eine Methode zum Anmelden erstellen, ähnlich wie bei der Entwicklung? – fbelanger