Valuation

This commit is contained in:
2026-06-12 19:09:08 +02:00
parent 6ac19a1334
commit dbfd6a0d89
5 changed files with 16 additions and 0 deletions

View File

@@ -1208,6 +1208,7 @@ class PurchaseTradeTestCase(ModuleTestCase):
lot = Mock(id=5, sale_line=None, lot_type='virtual')
lot.get_current_quantity_converted.return_value = Decimal('10')
fee = Mock(
id=11,
product=product,
supplier=supplier,
type='budgeted',
@@ -1241,6 +1242,7 @@ class PurchaseTradeTestCase(ModuleTestCase):
values = Valuation.create_pnl_fee_from_line(line)
self.assertEqual(values[0]['amount'], Decimal('0'))
self.assertEqual(values[0]['fee'], fee.id)
def test_fee_quantity_sync_uses_physical_lots_when_present(self):
'fee quantity sync ignores virtual lot once physical lots exist'
@@ -1762,6 +1764,7 @@ class PurchaseTradeTestCase(ModuleTestCase):
sale_lot.get_current_quantity_converted.return_value = Decimal('220')
sale_line.lots = [sale_lot]
fee = Mock(
id=12,
product=Mock(id=6, name='Broker commission'),
supplier=Mock(id=7),
type='budgeted',
@@ -1802,6 +1805,8 @@ class PurchaseTradeTestCase(ModuleTestCase):
values = Valuation.create_pnl_fee_from_sale_line(sale_line)
self.assertEqual(len(values), 2)
self.assertEqual(values[0]['fee'], fee.id)
self.assertEqual(values[1]['fee'], fee.id)
self.assertEqual(values[0]['shipment_in'], shipment.id)
self.assertEqual(values[0]['quantity'], Decimal('88.00000'))
self.assertEqual(values[0]['amount'], Decimal('-880.00'))