audit_test.yml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. -
  2. I create an audit rule on partners
  3. -
  4. !python {model: audit.rule}: |
  5. rule_id = self.search(cr, uid, [('model_id.model', '=', 'res.partner')], limit=1, context=context)
  6. if not rule_id:
  7. rule_id = self.create(cr, uid, {'name': 'Audit rule on partners', 'model_id': ref('base.model_res_partner')}, context)
  8. else:
  9. rule_id = rule_id[0]
  10. self.pool.get('ir.model.data').create(cr, uid, {'name': 'rule_partners', 'module': 'smile_audit', 'model': 'res.partner', 'res_id': rule_id}, context)
  11. -
  12. As demo user, I create a new partner
  13. -
  14. !record {model: res.partner, id: res_partner_test, view: False}:
  15. name: Test
  16. -
  17. I check if an audit log is created after creation
  18. -
  19. !python {model: audit.log}: |
  20. domain = [
  21. ('model_id', '=', ref('base.model_res_partner')),
  22. ('method', '=', 'create'),
  23. ('res_id', '=', ref('res_partner_test')),
  24. ]
  25. assert self.search(cr, uid, domain, limit=1, context=context), 'No audit log after user creation'
  26. -
  27. As demo user, I update contact name
  28. -
  29. !record {model: res.partner, id: res_partner_test, view: False}:
  30. name: Test 2
  31. -
  32. I check if an audit log is created after update
  33. -
  34. !python {model: audit.log}: |
  35. domain = [
  36. ('model_id', '=', ref('base.model_res_partner')),
  37. ('method', '=', 'write'),
  38. ('res_id', '=', ref('res_partner_test')),
  39. ]
  40. assert self.search(cr, uid, domain, limit=1, context=context), 'No audit log after user update'
  41. -
  42. As demo user, I delete this address
  43. -
  44. !python {model: res.partner}: |
  45. self.unlink(cr, uid, [ref('res_partner_test')], context)
  46. -
  47. I check if an audit log is created after deletion
  48. -
  49. !python {model: audit.log}: |
  50. domain = [
  51. ('model_id', '=', ref('base.model_res_partner')),
  52. ('method', '=', 'unlink'),
  53. ('res_id', '=', ref('res_partner_test')),
  54. ]
  55. assert self.search(cr, uid, domain, limit=1, context=context), 'No audit log after user deletion'