我有回调名称authenticate_admin_user。如果当前用户电子邮件 ID 为“adminuser@admin.com”,则返回 true
def authenticate_admin_user!
if Current.user.blank? || Current.user.email != "adminuser@admin.com"
redirect_to courses_path, danger: "Admin login required"
end
end
Run Code Online (Sandbox Code Playgroud)
当我调用 new action 时,此回调将运行。在测试新操作时,我必须设置 Current.user 值
describe "GET /new" do
describe "Create course with admin login"
it "will not renders a new course page" do
get new_course_url
expect(response).to_not be_successful
end
it "will render a new course page" do
get new_course_url
expect(response).to be_successful
end
end
Run Code Online (Sandbox Code Playgroud)
如何设置Current.user的值?PS:这里 Current 是一个 ActiveSupport::Currentattributes 模型,而 user 是 Current 类中的一个属性。