Demurrage

This commit is contained in:
2026-06-03 11:08:32 +02:00
parent dd4b8055a7
commit 654a8418bf
4 changed files with 230 additions and 37 deletions

View File

@@ -214,6 +214,35 @@ class PurchaseTradeTestCase(ModuleTestCase):
sof._applied_compensation_amount(), Decimal('-12000.00'))
self.assertEqual(sof.compensation_type, 'demurrage')
@with_transaction()
def test_sof_header_date_time_values_sync_to_datetime(self):
'sof header date and time fields build the technical datetime value'
Sof = Pool().get('sof.statement')
values = Sof._sync_datetime_values({
'notice_of_readiness_date': datetime.date(2026, 7, 6),
'notice_of_readiness_hour': datetime.time(8, 0),
})
self.assertEqual(
values['notice_of_readiness_time'],
datetime.datetime(2026, 7, 6, 8, 0))
@with_transaction()
def test_sof_event_date_time_values_sync_to_datetime(self):
'sof event date and time fields build the technical datetime values'
Event = Pool().get('sof.event')
values = Event._sync_datetime_values({
'start_date': datetime.date(2026, 1, 1),
'start_time': datetime.time(10, 0),
'end_date': datetime.date(2026, 1, 1),
'end_time': datetime.time(12, 0),
})
self.assertEqual(
values['start'], datetime.datetime(2026, 1, 1, 10, 0))
self.assertEqual(
values['end'], datetime.datetime(2026, 1, 1, 12, 0))
def test_contract_clause_variables_and_rendering_use_contract_context(self):
'contract clauses expose placeholders and render from purchase context'
clause = purchase_module.ContractClause()