Delta neg
This commit is contained in:
@@ -416,6 +416,53 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
|
||||
self.assertEqual(fee.get_amount(), Decimal('3.33'))
|
||||
|
||||
def test_sale_rate_fee_amount_stays_positive_with_negative_delta(self):
|
||||
'sale rate fee display amount is unsigned even when financing delta is negative'
|
||||
Fee = Pool().get('fee.fee')
|
||||
fee = Fee()
|
||||
fee.mode = 'rate'
|
||||
fee.price = Decimal('12')
|
||||
fee.fee_date = None
|
||||
fee.quantity = Decimal('10')
|
||||
fee.unit = Mock()
|
||||
fee.shipment_in = None
|
||||
fee.line = None
|
||||
fee.sale_line = Mock(
|
||||
unit_price=Decimal('100'),
|
||||
lots=[],
|
||||
estimated_date=[
|
||||
Mock(
|
||||
trigger='bldate',
|
||||
estimated_date=datetime.date(2026, 5, 23),
|
||||
fin_int_delta=-10,
|
||||
),
|
||||
],
|
||||
)
|
||||
|
||||
self.assertEqual(fee.get_amount(), Decimal('3.33'))
|
||||
|
||||
def test_fee_pnl_applies_pay_sign_to_unsigned_rate_amount(self):
|
||||
'fee pnl sign is applied once from PAY/REC'
|
||||
Valuation = Pool().get('valuation.valuation')
|
||||
lot = Mock()
|
||||
lot.get_current_quantity_converted.return_value = Decimal('10')
|
||||
fee = Mock(
|
||||
mode='rate',
|
||||
price=Decimal('12'),
|
||||
unit=Mock(),
|
||||
line=None,
|
||||
sale_line=Mock(
|
||||
unit_price=Decimal('100'),
|
||||
estimated_date=[
|
||||
Mock(trigger='bldate', fin_int_delta=-10),
|
||||
],
|
||||
),
|
||||
)
|
||||
|
||||
self.assertEqual(
|
||||
Valuation._fee_amount_for_lot_or_zero(fee, lot),
|
||||
Decimal('3.33'))
|
||||
|
||||
def test_create_pnl_price_from_line_keeps_finished_physical_sale_line(self):
|
||||
'purchase valuation keeps finished sale-side pnl on physical lots'
|
||||
Valuation = Pool().get('valuation.valuation')
|
||||
|
||||
Reference in New Issue
Block a user