Я изменил стандартное поведение after_sign_in_path_for
метода следующим образом:
class ApplicationController < ActionController::Base
private
def after_sign_in_path_for(resource)
return admin_root_path if resource.is_a?(AdminUser)
request.referrer || root_path
end
end
Это работает найти, и теперь я хочу проверить его по minitest
.
Но я не мог понять, как написать интеграционный тест для него.
Хотя есть ответ для rspec
, я не могу переписать для minitest
.
Как проверить after_sign_in_path_for (ресурс)?
Как мне написать тест для after_sign_in_path_for
по minitest
?
Рельсы: 5.1
разработка: 4.5.0
require 'test_helper'
class ApplicationControllerTest < ActionDispatch::IntegrationTest
include Devise::Test::IntegrationHelpers
setup do
2.times{ create(:post) }
@user = create(:user)
@admin_user = create(:admin_user)
end
test "should redirect to '/posts/1' after login" do
# get "/posts/1"
# sign_in(@user)
# test return back "/posts/1"
end
test "should redirect to '/posts/2' after login" do
# get "/posts/2"
# sign_in(@user)
# test return back "/posts/2"
end
test "should redirect to admin root page after login" do
# sign_in(@adminuser)
# test go to admin root page
end
end