【问题标题】:Testing if model is audited without RSpec测试模型是否在没有 RSpec 的情况下进行审核
【发布时间】:2019-07-27 11:46:40
【问题描述】:
【问题讨论】:
标签:
ruby-on-rails
ruby-on-rails-5
acts-as-audited
【解决方案1】:
您可以检查 respond_to? 某些方法是否与已审核的 gem 一起提供。
喜欢
User.respond_to?(:audited)
# or
User.respond_to?(:audits)
您也可以使用自述文件中的auditing_enabled 选项。
User.auditing_enabled
当审核存在时,默认返回 true。
关联审计也是如此。只需为您的关系构建一个数据结构,并检查审计是否等于您的预期结果。
以审核自述文件中的这个例子为例:
company = Company.create!(name: "Collective Idea")
user = company.users.create!(name: "Steve")
user.update_attribute!(name: "Steve Richert")
user.audits.last.associated # => #<Company name: "Collective Idea">
company.associated_audits.last.auditable # => #<User name: "Steve Richert">
然后,您可以轻松地检查相关审核是否符合您的要求。