02.04.26
This commit is contained in:
@@ -333,25 +333,37 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
||||
|
||||
self.assertEqual(invoice.report_net, Decimal('800'))
|
||||
|
||||
def test_invoice_report_nb_bale_uses_uom_conversion_with_sign(self):
|
||||
'invoice final note converts signed net quantity to bale using UoM rules'
|
||||
def test_invoice_report_nb_bale_uses_linked_lot_packaging(self):
|
||||
'invoice reports packaging from linked physical lots with signed prorata'
|
||||
Invoice = Pool().get('account.invoice')
|
||||
|
||||
line = Mock(type='line', quantity=Decimal('-15'))
|
||||
line.unit = Mock(rec_name='MT')
|
||||
line.unit.category = Mock()
|
||||
bale_uom = Mock(category=line.unit.category)
|
||||
sale_line = Mock()
|
||||
lot = Mock(
|
||||
lot_type='physic',
|
||||
lot_qt=Decimal('700'),
|
||||
lot_unit=Mock(symbol='bale'),
|
||||
lot_quantity=Decimal('2000'),
|
||||
lot_unit_line=line.unit,
|
||||
sale_invoice_line=line,
|
||||
sale_invoice_line_prov=None,
|
||||
invoice_line=None,
|
||||
invoice_line_prov=None,
|
||||
)
|
||||
sale_line.lots = [lot]
|
||||
sale = Mock(lines=[sale_line])
|
||||
uom_model = Mock()
|
||||
uom_model.get_by_name.return_value = bale_uom
|
||||
uom_model.compute_qty.return_value = Decimal('-53.6')
|
||||
uom_model.compute_qty.return_value = Decimal('2000')
|
||||
invoice = Invoice()
|
||||
invoice.sales = [sale]
|
||||
invoice.lines = [line]
|
||||
|
||||
with patch(
|
||||
'trytond.modules.purchase_trade.invoice.Pool'
|
||||
) as PoolMock:
|
||||
PoolMock.return_value.get.return_value = uom_model
|
||||
self.assertEqual(invoice.report_nb_bale, 'NB BALES: -54')
|
||||
self.assertEqual(invoice.report_nb_bale, 'NB BALES: -5')
|
||||
|
||||
def test_invoice_report_positive_rate_lines_keep_positive_components(self):
|
||||
'invoice final note pricing section keeps only positive component lines'
|
||||
|
||||
Reference in New Issue
Block a user