Fee FI bug
This commit is contained in:
@@ -224,6 +224,37 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
|
||||
self.assertEqual(values[0]['amount'], Decimal('0'))
|
||||
|
||||
def test_purchase_rate_fee_amount_uses_virtual_lot_quantity(self):
|
||||
'purchase rate fee amount falls back to the purchase virtual lot quantity'
|
||||
Fee = Pool().get('fee.fee')
|
||||
fee = Fee()
|
||||
fee.mode = 'rate'
|
||||
fee.price = Decimal('12')
|
||||
fee.fee_date = datetime.date(2026, 4, 23)
|
||||
fee.quantity = None
|
||||
fee.unit = Mock()
|
||||
fee.shipment_in = None
|
||||
lot = Mock()
|
||||
lot.get_current_quantity_converted.return_value = Decimal('10')
|
||||
fee.line = Mock(
|
||||
unit_price=Decimal('100'),
|
||||
lots=[lot],
|
||||
estimated_date=[
|
||||
Mock(
|
||||
trigger='bldate',
|
||||
estimated_date=datetime.date(2026, 5, 23),
|
||||
fin_int_delta=10,
|
||||
),
|
||||
],
|
||||
)
|
||||
fee.sale_line = None
|
||||
|
||||
with patch('trytond.modules.purchase_trade.fee.Pool') as PoolMock:
|
||||
PoolMock.return_value.get.return_value = Mock(
|
||||
today=Mock(return_value=datetime.date(2026, 4, 23)))
|
||||
|
||||
self.assertEqual(fee.get_amount(), Decimal('13.33'))
|
||||
|
||||
def test_create_pnl_price_from_line_ignores_finished_matched_sale_line(self):
|
||||
'purchase valuation does not add sale-side pnl when the matched sale line is finished'
|
||||
Valuation = Pool().get('valuation.valuation')
|
||||
|
||||
Reference in New Issue
Block a user