首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Error:define_method(名称){__memoized.fetch_or_store(名称){ super(&nil)}}

Error:define_method(名称){__memoized.fetch_or_store(名称){ super(&nil)}}
EN

Stack Overflow用户
提问于 2019-03-08 15:43:28
回答 1查看 134关注 0票数 1

我在Rails中使用swagger运行规范,并有此错误。

Define_method(名称){__memoized.fetch_or_store(名称){ super(&nil) }}

这是我在post_spec.rb中的代码

代码语言:javascript
代码运行次数:0
运行
复制
require 'swagger_helper'

 describe 'Fedaby API' do
   path '/posts' do
     get 'Get all post' do
       tags 'Posts'
       consumes 'application/json', 'application/xml'
       produces 'application/json'

       response '200', 'Array with all post' do
         run_test!
       end
    end
  end

  path '/posts' do
    post 'Create post' do
      tags 'Posts'
      consumes 'application/json', 'application/xml'
      produces 'application/json'
      parameter name: :post, in: :body, schema: {
        type: :object,
        properties: {
          title: { type: :string },
          body: { type: :string },
          vote: { type: :integer },
          image: { type: :string },
          user_id: { type: :integer }
        }
      }

      response '201', 'Post created' do
        let(:post) { { title: 'test', body: 'test_body', vote: 0, image: 'test_image', user_id: 1 } }
        run_test!
      end

      response '422', 'invalid request' do
        let(:post) {{ title: 'test' }}
        run_test!
      end
    end
  end
end

失败

代码语言:javascript
代码运行次数:0
运行
复制
 Failures:
    1) Fedaby API /posts post Post created returns a 201 response
    Failure/Error: define_method(name) { __memoized.fetch_or_store(name) { super(&nil) } }

 ArgumentError:
   wrong number of arguments (given 2, expected 0)

我使用的是gem rspec-rails和rswag specs。

EN

回答 1

Stack Overflow用户

发布于 2019-03-08 18:01:57

问题在于let(: post )与动词REST有冲突,我更改了文章的模型帖子名称和用户let(:文章),从而解决了问题。

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

https://stackoverflow.com/questions/55066550

复制
相关文章

相似问题

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