gpt4 book ai didi

ruby-on-rails - 设计和声明授权功能测试问题

转载 作者:行者123 更新时间:2023-11-28 20:47:01 25 4
gpt4 key购买 nike

在使用设计和声明性授权时,我很难让功能测试正常工作。我可以使用设计测试助手来登录用户,然后在 Controller 中填充 current_user 变量。但是一旦我使用 post_with 测试助手进行声明性授权,current_user 就会变为 nil。

谁能给我举一个在同时使用设计授权和声明授权时如何编写功能测试的示例?

谢谢

最佳答案

我遇到了同样的问题。您不能在 devise 的功能测试中使用声明性授权测试助手,例如 post_with。

对于功能测试,您必须使用设计测试助手,例如 sign_in 和 sign_out。我写了一个助手,它使用设计测试助手方法进行功能测试:

def test_with_user(user, &block)
begin
sign_in :user, users(user)
yield
ensure
sign_out :user
end
end

我按以下方式使用这个助手:

test_with_user(:max) do
get :new
assert_response :success
end

希望对您有所帮助。

关于ruby-on-rails - 设计和声明授权功能测试问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4641847/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com