From 8bb02191ebaeb7ee503f75fedb717cff2bcc2b46 Mon Sep 17 00:00:00 2001 From: Bulat Kurbanov Date: Tue, 1 Oct 2024 00:15:46 +0200 Subject: [PATCH] Add debug info for event comparator --- src/services/scheduler_sync/comparators.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/services/scheduler_sync/comparators.py b/src/services/scheduler_sync/comparators.py index 030ff90..674fa6e 100644 --- a/src/services/scheduler_sync/comparators.py +++ b/src/services/scheduler_sync/comparators.py @@ -1,44 +1,59 @@ from datetime import datetime +import logging from services.scheduler_sync.discord_events import DiscordEvent, CreateDiscordEvent, RecurrenceRule +logger = logging.getLogger(__name__) +logger.setLevel(logging.DEBUG) + + def is_repeated(start: datetime, target: datetime, rule: RecurrenceRule) -> bool: return start.time() == target.time() and target.weekday() in rule.by_weekday def compare(create_event: CreateDiscordEvent, event: DiscordEvent) -> bool: if create_event.name != event.name: + logger.debug(f"Name is different: {create_event.name} != {event.name}") return False if create_event.description != event.description: + logger.debug(f"Description is different: {create_event.description} != {event.description}") return False if create_event.recurrence_rule is not None: if event.recurrence_rule is None: + logger.debug(f"Recurrence rule is different: {create_event.recurrence_rule} != {event.recurrence_rule}") return False ce_rr = create_event.recurrence_rule e_rr = event.recurrence_rule if ce_rr.by_weekday != e_rr.by_weekday: + logger.debug(f"Recurrence rule is different: {ce_rr.by_weekday} != {e_rr.by_weekday}") return False if ce_rr.interval != e_rr.interval: + logger.debug(f"Recurrence rule is different: {ce_rr.interval} != {e_rr.interval}") return False if ce_rr.frequency != e_rr.frequency: + logger.debug(f"Recurrence rule is different: {ce_rr.frequency} != {e_rr.frequency}") return False if not is_repeated(ce_rr.start, e_rr.start, ce_rr): + logger.debug(f"Recurrence rule is different: {ce_rr.start} != {e_rr.start}") return False else: if event.recurrence_rule is not None: + logger.debug(f"Recurrence rule is different: {create_event.recurrence_rule} != {event.recurrence_rule}") return False if create_event.scheduled_start_time != event.scheduled_start_time: if create_event.recurrence_rule is None or not is_repeated(create_event.scheduled_start_time, event.scheduled_start_time, create_event.recurrence_rule): + logger.debug(f"Scheduled start time is different: {create_event.scheduled_start_time} != {event.scheduled_start_time}") return False if create_event.scheduled_end_time != event.scheduled_end_time: if create_event.recurrence_rule is None or not is_repeated(create_event.scheduled_end_time, event.scheduled_end_time, create_event.recurrence_rule): + logger.debug(f"Scheduled end time is different: {create_event.scheduled_end_time} != {event.scheduled_end_time}") return False return True