gpt4 book ai didi

api - 设计 sign_in 方法在 RSpec 测试中抛出 NoMethodError

转载 作者:行者123 更新时间:2023-12-02 03:29:47 26 4
gpt4 key购买 nike

Devise sign_in 方法应该接受 store: false 作为第二个参数,除非我在 RSpec 中并使用 Devise::TestHelpers.

当我从 sessions_controller_spec.rb 运行此测试时:

require 'rails_helper'
describe Api::V1::SessionsController do
before(:each) do
@user = FactoryGirl.create :user
end
...
describe 'DELETE #destroy' do
before(:each) do
sign_in @user, store: false
delete :destroy, id: @user.auth_token
end
it { should respond_with 204 }
end
end

我得到了这个失败: enter image description here

最佳答案

我也遇到了同样的问题。根据 Devise 网站,没有这样的方法。尝试删除“store: false”参数并再次运行。它解决了我的问题。

...
describe 'DELETE #destroy' do
before(:each) do
sign_in @user
delete :destroy, id: @user.auth_token
end
it { should respond_with 204 }
...

并记住将以下内容放入名为 spec/support/devise.rb 的文件或您的 spec/spec_helper.rb(或 spec/rails_helper.rb,如果您使用的是 rspec-rails)

RSpec.configure do |config|
config.include Devise::TestHelpers, type: :controller
end

Take a look on this link

关于api - 设计 sign_in 方法在 RSpec 测试中抛出 NoMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27672996/

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