2013-02-25 3 views
5

authenticate_or_request_with_http_basic을 사용하는 레일 컨트롤러가 있습니다. 어떻게하면 rspec 예제에서 사용자/패스를 설정할 수 있습니까?rspec 컨트롤러 예제에서 기본 인증을 테스트하려면 어떻게해야합니까?

나는 웹상에서 이것을 다른 곳에서도 찾을 수 없었기 때문에 놀랍습니다. 잘못된 용어를 사용하고 있을까요? - 나는 아주 오래된 것들을 발견했거나 매우 복잡한 것들을 좋아하는 것 같습니다. 이 시점에서 rspec이 이와 같은 직접 지원을하거나 깔끔한 관용적 인 해결책을 가지고있는 것처럼 보입니다.

+1

이걸 보셨습니까? http://stackoverflow.com/questions/8013770/solved-rspec-rails-3-1-integration-test-how-to-send-post-request-headers-for – zetetic

+0

감사합니다! 더 간단한 방법을 찾아 낼 수있게 해줬습니다. –

답변

6

이 작동합니다. @ zetetic에게 올바른 방향으로 나를 가리켜 주신 덕분에

before do 
    @request.env["HTTP_AUTHORIZATION"] = "Basic " + Base64::encode64("username:password") 
end 
+0

문자열 보간법 사용 : '@ request.env [ 'HTTP_AUTHORIZATION'] = "BasiC# {Base64 :: encode64 ('username : password')} – swrobel

관련 문제