首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Capybara::InfiniteRedirectError

Capybara::InfiniteRedirectError
EN

Stack Overflow用户
提问于 2013-03-28 08:58:30
回答 1查看 1.1K关注 0票数 5

使用OmniAuth (与omniauth_crowd),我希望用户被重定向回登录页面,如果他没有提交正确的用户名和密码。它在生产中工作得很好,但我在测试它时遇到了恼人的问题。

为了模拟OmniAuth提供程序,我使用了OmniAuth插件作者推荐的以下代码:

代码语言:javascript
运行
复制
OmniAuth.config.test_mode = true
OmniAuth.config.mock_auth[:someProvider] = :invalid_credentials
visit_page @page

上面的代码自动(即不输入用户名和密码)将Capybara重定向到session#failure。我的session#failure重定向到login_path

因此,我在一个循环中结束:

代码语言:javascript
运行
复制
redirected more than 5 times, check for infinite redirects. (Capybara::InfiniteRedirectError)

对于我的案例,最好的解决方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-07 06:43:13

我在Omniauth上遇到了类似的问题。

不确定是否有解决方法,因为这是OmniAuth.config.mock_auth的工作方式。

我的解决方案是使用fakeweb而不是OmniAuth模拟。

您可能应该先看看omniauth_crowd本身是如何测试的。

这里有一个很好的例子:https://github.com/robdimarco/omniauth_crowd/blob/master/spec/omniauth/strategies/crowd_spec.rb#L49-69

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15672427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档