在htaccess实现后,Rake测试全部失败

时间:2012-11-25 00:04:37

标签: ruby-on-rails .htaccess authentication

感谢this excellent question and answer,我已经了解了如何通过在应用程序控制器中添加以下代码来保护我的rails应用程序:

before_filter :authenticate

protected
def authenticate
    authenticate_or_request_with_http_basic do |username, password|
      username == "username" && password == "password"
    end
end

这一切都很好,但我注意到我写的所有测试(全部通过)现在都失败了。当我注释掉before_filter调用时,它们都会再次通过。

我该如何解决这个问题?有没有办法从htaccess保护中排除测试?

1 个答案:

答案 0 :(得分:1)

您可以通过包含基本身份验证来更改测试,请参阅:

def test_should_get_index
  @request.env["HTTP_AUTHORIZATION"] = "Basic " + Base64::encode64("username:password")
  get :index
  assert_response :success
  assert_not_nil assigns(:articles)
end

来源:http://flip.netzbeben.de/2008/06/functional-test-for-http-authentication-in-rails-2/