Test lead in state 'draft' base.action.rule.lead.test [('state', '=', 'draft')] Test lead in state 'open' base.action.rule.lead.test [('state', '=', 'open')] Test lead in state 'done' base.action.rule.lead.test [('state', '=', 'done')] Test rule on create on_create Test rule on write on_write Test rule on recompute on_write [('customer', '=', True)] Test Server Action record = model.browse(context['active_id']) if 'partner_id' in context['old_values'][record.id]: record.write({'state': 'draft'}) Test recursive rule on_write Test rule on secondary record on_create Test Server Action Context record = model.browse(context['active_id']) if 'user_id' in context['old_values'][record.id]: record.write({'is_assigned_to_admin': (record.user_id.id == 1)}) Test rule on write check context on_write