Por el resto de mi vida, no entiendo por qué Authlogic no me está iniciando sesión en esta prueba de integración. No he tenido ningún problema con Authlogic registrándome en pruebas funcionales usando este código. De acuerdo con el rdocs authlogic (http://tinyurl.com/mb2fp2), simular un estado de inicio de sesión es el mismo en las pruebas de integración funcional &, por lo que estoy bastante confundido. ¡Cualquier ayuda es muy apreciada!Pruebas de integración con Authlogic?
class TipsController < ApplicationController
before_filter :require_user, :only => [:destroy, :undelete]
def destroy
@tip = Tip.find(params[:id])
if can_delete?(@tip)
@tip.destroy
set_flash("good", "Tip deleted. <a href=\"#{undelete_tip_url(@tip.id)}\">Undo?</a>")
respond_to do |format|
format.html { redirect_to city_path(@tip.city)}
end
else
set_flash("bad", "Seems like you can't delete this tip, sorry.")
respond_to do |format|
format.html { render :action => "show", :id => @tip}
end
end
end
end
class DeleteTipAndRender < ActionController::IntegrationTest
context "log user in" do
setup do
@user = create_user
@tip = create_tip
end
context "delete tip" do
setup do
activate_authlogic
UserSession.create(@user)
@us = UserSession.find
post "/tips/destroy", :id => @tip.id
end
should_redirect_to("city_path(@tip.city)"){city_path(@tip.city)}
end
end
end
gracias. de esta línea en el rdoc: UserSession.create (users (: whomever)) supuse que podría pasar un @user obj. ¡Aprecia la ayuda! – kareem
hmm acuerdo con esto: http://rdoc.info/rdoc/binarylogic/authlogic/blob/73c4cccb38189f0e52e1e362992dfb9db7d1206f/Authlogic/Session/UnauthorizedRecord.html que debería ser capaz de hacer UserSession.create (@user) y haz que funcione ... wtf. – kareem