首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >expect_to_receive不工作

expect_to_receive不工作
EN

Stack Overflow用户
提问于 2014-07-15 14:55:30
回答 1查看 87关注 0票数 0

我试图使用expect_to_receive rspec期望值,但没有任何运气。我的控制器规范文件看起来是这样的:

代码语言:javascript
复制
it 'resolves an end behaviour' do
  expect_any_instance_of(Job).to receive(:resolve_end_behaviour)

  post :callback, @params
end

我的控制方法是:

代码语言:javascript
复制
def callback
  @video = JobVideo.find(params['body']['id'].to_i)
  if !@video.is_ready
    @video.job.resolve_end_behaviour
    @video.update_attribute(:is_ready, true)
  end

  render json: { success: true }
end

运行rspec会给我以下信息:

代码语言:javascript
复制
Exactly one instance should have received the following message(s) but didn't: resolve_end_behaviour

我确信此方法被称为“因为is_ready列正在更新”。有人能告诉我为什么会发生这种事吗?我能做些什么?提前谢谢。

环境规划署:

  • rails 4
  • rspec 3
EN

回答 1

Stack Overflow用户

发布于 2014-07-15 15:00:27

您的测试期望使用两个参数调用resolve_end_behaviour,而调用它时不带任何参数。

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

https://stackoverflow.com/questions/24761479

复制
相关文章

相似问题

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