加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – RSpec错误“未定义的方法`respond_with’…”

发布时间:2020-12-17 01:43:17 所属栏目:百科 来源:网络整理
导读:我正在按照教程 http://apionrails.icalialabs.com/book/chapter_three 但是当我运行控制器测试包exec rspec规范/控制器时,我得到未定义的方法错误: Failures: Api::V1::UsersController GET #show Failure/Error: it { should respond_with 200 } NoMethod
我正在按照教程 http://apionrails.icalialabs.com/book/chapter_three
但是当我运行控制器测试包exec rspec规范/控制器时,我得到未定义的方法错误:

Failures:

 Api::V1::UsersController GET #show 
 Failure/Error: it { should respond_with 200 }
 NoMethodError:
   undefined method `respond_with' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x00000005d6f650>
 # ./spec/controllers/api/v1/users_controller_spec.rb:17:in `block (3 levels) in <top (required)>'

 Finished in 0.08435 seconds
 2 examples,1 failure

请帮忙

编辑:
以下是我的spec文件的内容

users_controller_spec.rb

require 'spec_helper'

describe Api::V1::UsersController do
  before(:each) { request.headers['Accept'] = "application/vnd.marketplace.v1" }

  describe "GET #show" do
    before(:each) do
      @user = FactoryGirl.create :user
      get :show,id: @user.id,format: :json
    end

    it "returns the information about a reporter on a hash" do
      user_response = JSON.parse(response.body,symbolize_names: true)
      expect(user_response[:email]).to eql @user.email
    end

    it { should respond_with 200 }
  end
end

解决方法

我有同样的问题并解决了它.看起来像使用旧版本的shoulda-matchers有帮助.我将Gemfile更改为gem“shoulda-matchers”,“?> 2.5”

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读