Align credit note test with physical B-origin behavior

This commit is contained in:
José Arturo García
2026-08-08 22:20:31 -04:00
parent 6e9b8c77ff
commit e272bb5cfa
+9 -4
View File
@@ -410,13 +410,18 @@ class NcfManagerUnitTestCase(unittest.TestCase):
self.assertEqual(debit_note.ncf_type, '3')
self.assertEqual(debit_note.ncf_sequence, physical_sequence)
def test_credit_note_preparation_prefers_electronic_sequence_for_b_origin(self):
def test_credit_note_preparation_uses_physical_for_b_origin(self):
electronic_sequence = SimpleNamespace(ncf_type='34')
physical_sequence = SimpleNamespace(ncf_type='4')
original_find_active_sequence = Invoice._ncf_find_active_sequence
original_enabled = Invoice._ncf_electronic_invoicing_enabled
def find_sequence(cls, invoice, ncf_code):
return electronic_sequence if ncf_code == '34' else None
if ncf_code == '34':
return electronic_sequence
if ncf_code == '4':
return physical_sequence
return None
Invoice._ncf_find_active_sequence = classmethod(find_sequence)
Invoice._ncf_electronic_invoicing_enabled = classmethod(
@@ -440,8 +445,8 @@ class NcfManagerUnitTestCase(unittest.TestCase):
Invoice._ncf_electronic_invoicing_enabled = original_enabled
self.assertEqual(credit_note.ncf_number_modified, 'B0100000001')
self.assertEqual(credit_note.ncf_type, '34')
self.assertEqual(credit_note.ncf_sequence, electronic_sequence)
self.assertEqual(credit_note.ncf_type, '4')
self.assertEqual(credit_note.ncf_sequence, physical_sequence)
self.assertEqual(credit_note.payment_method, '06')
def test_modified_ncf_validation_applies_to_debit_notes(self):