Custom duplicate bug
This commit is contained in:
@@ -2148,6 +2148,8 @@ class Line(metaclass=PoolMeta):
|
|||||||
return
|
return
|
||||||
if values.get('estimated_date') is None:
|
if values.get('estimated_date') is None:
|
||||||
values['estimated_date'] = []
|
values['estimated_date'] = []
|
||||||
|
elif isinstance(values['estimated_date'], tuple):
|
||||||
|
values['estimated_date'] = list(values['estimated_date'])
|
||||||
values['estimated_date'].append(('create', [{
|
values['estimated_date'].append(('create', [{
|
||||||
'trigger': 'bldate',
|
'trigger': 'bldate',
|
||||||
'estimated_date': estimated_date,
|
'estimated_date': estimated_date,
|
||||||
|
|||||||
@@ -1975,6 +1975,8 @@ class SaleLine(metaclass=PoolMeta):
|
|||||||
return
|
return
|
||||||
if values.get('estimated_date') is None:
|
if values.get('estimated_date') is None:
|
||||||
values['estimated_date'] = []
|
values['estimated_date'] = []
|
||||||
|
elif isinstance(values['estimated_date'], tuple):
|
||||||
|
values['estimated_date'] = list(values['estimated_date'])
|
||||||
values['estimated_date'].append(('create', [{
|
values['estimated_date'].append(('create', [{
|
||||||
'trigger': 'bldate',
|
'trigger': 'bldate',
|
||||||
'estimated_date': estimated_date,
|
'estimated_date': estimated_date,
|
||||||
|
|||||||
@@ -4409,6 +4409,34 @@ class PurchaseTradeTestCase(ModuleTestCase):
|
|||||||
'estimated_date': datetime.date(2026, 5, 1),
|
'estimated_date': datetime.date(2026, 5, 1),
|
||||||
}])])
|
}])])
|
||||||
|
|
||||||
|
def test_purchase_and_sale_line_default_estimated_bl_date_accepts_tuple(self):
|
||||||
|
'new lines normalize tuple estimated date commands before appending'
|
||||||
|
PurchaseLine = Pool().get('purchase.line')
|
||||||
|
SaleLine = Pool().get('sale.line')
|
||||||
|
period = Mock(beg_date=datetime.date(2026, 5, 1))
|
||||||
|
existing = ('create', [{
|
||||||
|
'trigger': 'other',
|
||||||
|
'estimated_date': datetime.date(2026, 5, 9),
|
||||||
|
}])
|
||||||
|
purchase_values = {
|
||||||
|
'del_period': period,
|
||||||
|
'estimated_date': (existing,),
|
||||||
|
}
|
||||||
|
sale_values = {
|
||||||
|
'del_period': period,
|
||||||
|
'estimated_date': (existing,),
|
||||||
|
}
|
||||||
|
|
||||||
|
PurchaseLine._set_default_estimated_bl_date_values(purchase_values)
|
||||||
|
SaleLine._set_default_estimated_bl_date_values(sale_values)
|
||||||
|
|
||||||
|
expected = [existing, ('create', [{
|
||||||
|
'trigger': 'bldate',
|
||||||
|
'estimated_date': datetime.date(2026, 5, 1),
|
||||||
|
}])]
|
||||||
|
self.assertEqual(purchase_values['estimated_date'], expected)
|
||||||
|
self.assertEqual(sale_values['estimated_date'], expected)
|
||||||
|
|
||||||
def test_purchase_line_reporting_parent_fields_and_counts(self):
|
def test_purchase_line_reporting_parent_fields_and_counts(self):
|
||||||
'purchase line reporting fields mirror parent values and relation counts'
|
'purchase line reporting fields mirror parent values and relation counts'
|
||||||
PurchaseLine = Pool().get('purchase.line')
|
PurchaseLine = Pool().get('purchase.line')
|
||||||
|
|||||||
Reference in New Issue
Block a user