From 9622ffe44280f3ef7d274be215697f72b554bf2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Warnon?= Date: Thu, 17 Dec 2020 11:03:15 +0000 Subject: [PATCH] [FIX] event: make ticket sale start date inclusive This commit fixes the ticket sale start date to be considered inclusive. Indeed, before this commit, if the sales of a ticket starts on the 1st of December, people arriving on the website at that exact date will NOT be able to buy tickets although they should be. They will have to wait for the next day to be able to buy tickets. A small test was added to ensure this behavior. Task 2415917 closes odoo/odoo#63685 X-original-commit: ea6952fd7ec881b79a7294c40427ce9966997e66 Signed-off-by: Thibault Delavallee (tde) --- addons/event/models/event_ticket.py | 2 +- addons/event/tests/test_event_internals.py | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/addons/event/models/event_ticket.py b/addons/event/models/event_ticket.py index 598179d2070..b7358fef998 100644 --- a/addons/event/models/event_ticket.py +++ b/addons/event/models/event_ticket.py @@ -145,6 +145,6 @@ class EventTicket(models.Model): if self.start_sale_date: ticket = self._set_tz_context() current_date = fields.Date.context_today(ticket) - return ticket.start_sale_date < current_date + return ticket.start_sale_date <= current_date else: return True diff --git a/addons/event/tests/test_event_internals.py b/addons/event/tests/test_event_internals.py index 09a0f9f5a92..98f562f454e 100644 --- a/addons/event/tests/test_event_internals.py +++ b/addons/event/tests/test_event_internals.py @@ -348,6 +348,14 @@ class TestEventTicketData(TestEventCommon): }) self.assertFalse(second_ticket.sale_available) self.assertFalse(second_ticket.is_expired) + # sale started today + second_ticket.write({ + 'start_sale_date': date(2020, 1, 31), + 'end_sale_date': date(2020, 2, 20), + }) + self.assertTrue(second_ticket.sale_available) + self.assertTrue(second_ticket.is_launched()) + self.assertFalse(second_ticket.is_expired) # incoherent dates are invalid with self.assertRaises(exceptions.UserError): second_ticket.write({'end_sale_date': date(2020, 1, 20)})