from odoo.tests.common import TransactionCase from odoo.tests import tagged @tagged('post_install', '-at_install') class TestResPartnerFollowup(TransactionCase): def test_default_status_no_action(self): partner = self.env['res.partner'].create({'name': 'Default Status'}) self.assertEqual(partner.fusion_followup_status, 'no_action') self.assertEqual(partner.fusion_followup_risk_band, 'low') self.assertEqual(partner.fusion_followup_risk_score, 0) def test_run_count_reflects_history(self): partner = self.env['res.partner'].create({'name': 'History Partner'}) self.assertEqual(partner.fusion_followup_run_count, 0) for _ in range(3): self.env['fusion.followup.run'].create({'partner_id': partner.id}) partner.invalidate_recordset(['fusion_followup_run_count', 'fusion_followup_run_ids']) self.assertEqual(partner.fusion_followup_run_count, 3) def test_action_view_followup_history_returns_action(self): partner = self.env['res.partner'].create({'name': 'Action Partner'}) action = partner.action_view_followup_history() self.assertEqual(action['res_model'], 'fusion.followup.run') self.assertEqual(action['domain'], [('partner_id', '=', partner.id)]) self.assertEqual(action['context']['default_partner_id'], partner.id)