2017-03-25 11 views
1

레일스 5에 current_user을 어떻게 삽입합니까?Rails 5에서 current_user를 스터핑하는 방법은 무엇입니까?

@controller.stub :current_user, mock_user do 

end 

일을하지만, ActionDispatch::IntegrationTest에는 @controller 없다 :

나는이 예상? 나는 인증을 위해 sorcery 보석을 사용한다.

+0

'current_user'란 무엇입니까? 그것은 변수입니까? 방법? 당신이 궁리를 사용합니까? –

+0

컨트롤러의 한 방법입니다. 나는 마법을 사용한다. 나는 질문에 그것을 넣을 것이다. 나는 대부분의 인증 보석이 그것을 정의하기 때문에 중요하지 않다. – Borsunho

+0

블록의 내부와 오류/실패의 출력을 표시 할 수 있습니까? – Glyoko

답변

1

는 당신이 시도 할 수있는 wiki example : current_user로 테스트 사용자를 설정합니다

class TeamsControllerTest < ActionController::TestCase 
    include Sorcery::TestHelpers::Rails::Integration 
    include Sorcery::TestHelpers::Rails::Controller 

    setup do 
    @team = teams(:one) 
    @user = users(:one) 

    login_user(user = @user, route = login_url) # replace with your login url path 
    end 

    test "should get index" do 
    get :index 
    assert_response :success 
    assert_not_nil assigns(:teams) 
    end 

.