ruby-on-rails - RSpec: should_receive 作为被规范的东西

标签 ruby-on-rails ruby validation testing rspec

我想使用 should_receive 作为 RSpec 规范的主题。换句话说,我不想测试 should ==,而是想测试另一个类接收方法调用。

我想写的是这样的:

describe '#methodOne' do

  subject { ClassTwo }

  it { should_receive(:methodTwo) }

  ClassOne.methodOne

end

这可能吗?

最佳答案

有一些方法可以扭曲 RSpec 来做这样的事情,但它并没有按照预期的方式使用 RSpec。 should_receive 设置一个方法将被调用的模拟期望。对于单行 it 语法没有意义。

我建议您从基本的 describe/it 结构开始,只重构更高级的结构(主题,一行 it ) 当你有重复时。

关于ruby-on-rails - RSpec: should_receive 作为被规范的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11414958/

相关文章:

ruby-on-rails - Rails 服务器说端口已被使用,如何杀死该进程?

mysql - 将 mySql2 迁移到 postgreSQL : query cache type error when mysql2psql

mysql - 从 Rails 中的多连接查询创建 JSON 报告

当我在 'ensure' 中的 'retry' 时,Ruby 不为 'rescue'

javascript - 如何使用javascript检查数字类型输入的有效性?

validation - 实现中的静态分析与符号执行

ruby-on-rails - 如何去除 HTML 标签,包括没有 ' 和东西的转义图像标签?

ruby-on-rails - heredoc 中没有显示换行符

html - 需要帮助将兄弟元素错误消息定位到特定的选择列表

ruby - 电话在数据库架构中定义为字符串,但整数在 Ruby 中保存为有效