This commit is contained in:
2026-06-17 10:52:29 +02:00
parent f0714d5670
commit 6ba5361269
3 changed files with 179 additions and 9 deletions

View File

@@ -5468,6 +5468,36 @@ class PurchaseTradeTestCase(ModuleTestCase):
self.assertEqual(
invoice.report_purchase_commission_secondary_rate_line, '')
def test_commission_cndn_weight_adjustment_uses_fee_lot_weights(self):
'commission note adjustment uses provisional and current lot weights'
Invoice = Pool().get('account.invoice')
unit = SimpleNamespace(id=1, rec_name='MT', symbol='MT')
provisional_line = SimpleNamespace(
quantity=Decimal('400'), unit=unit)
lot = SimpleNamespace(
id=1,
sale_invoice_line_prov=provisional_line,
sale_invoice_padding=Decimal('0'),
get_current_quantity_converted=lambda state=0, unit=None: Decimal('397'))
fee = SimpleNamespace(
enable_linked_currency=False,
unit=unit,
sale_line=SimpleNamespace(sale=SimpleNamespace()),
line=None,
lots=[lot],
_get_effective_fee_lots=lambda: [lot])
invoice = Invoice()
invoice.lines = [
SimpleNamespace(type='line', fee=fee, quantity=Decimal('1'))]
self.assertEqual(
invoice.report_commission_invoice_weight_display, '400.00')
self.assertEqual(
invoice.report_commission_landed_weight_display, '397.00')
self.assertEqual(
invoice.report_commission_weight_difference_display, '3.00')
self.assertEqual(invoice.report_commission_adjustment_unit_upper, 'MT')
def test_fee_delete_detects_generated_ordered_purchase(self):
'ordered fee deletion targets only its generated service purchase'
Fee = Pool().get('fee.fee')