ruby-on-rails - rails : problem setting expectations on mock model in RSpec

标签 ruby-on-rails rspec

我正在尝试对模拟的 ActiveRecord 模型设置期望。我创建了以下示例,它应该根据我可以找到的文档通过。

it "should pass given the correct expectations" do
  payment = mock_model(Payment)
  payment.should_receive(:membership_id).with(12)
  payment.membership_id = 12
end

它因错误“...Mock 'Payment_1004'收到意外消息:membership_id= with (12)”而失败

我意识到我正在测试模拟框架,我只是想了解如何设置期望。

最佳答案

您对错误的方法名称设置了期望 - :membership_id是“ setter/getter ”,:membership_id=是“二传手”。正确的行是:

payment.should_receive(:membership_id=).with(12)

关于ruby-on-rails - rails : problem setting expectations on mock model in RSpec,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1127021/

相关文章:

ruby-on-rails - Ruby on Rails 错误 ActiveRecord::PendingMigrationError

ruby-on-rails - css 属性在 Rails 应用程序中继承

ruby-on-rails - 将 Cappuccino 与 Ruby on Rails 集成

rspec - 在 circleCI 上创建 tmp 文件的规范失败

mysql - 如何在 Rails 中预先填充的数据库上运行测试?

mysql - 在 ROR 迁移期间将列类型从 Date 更改为 DateTime

ruby-on-rails - rails 中的事件记录 postgresql 适配器错误

ruby - Kaminari 和 Capybara 冲突

rspec - 找不到生成器 rspec :install (q2)

ruby-on-rails - rspec 接收方法未按预期工作