我正在尝试为看似相对简单的测试编写 RSpec 测试,但事实证明它非常棘手(尽管我是 RSpec 新手)。
简单来说,我想测试我的应用程序中的所有模型都响应:所有者或:所有者。
我的第一个问题是遍历所有模型——如何在 RSpec 中做到这一点?我通常可以遍历模型,例如:
ActiveRecord::Base.descendants.each { |model|
model.should respond_to :owner
}
但不确定如何在 RSpec 中正确执行此操作?我找不到太多关于在测试中使用循环的文档。
我的第二个问题是关于“OR”子句的——如何实现“对所有者或所有者的响应”?就像是:
model.should respond_to :owner || :owners
但同样我找不到太多关于 using or 子句的文档。