Co-authored-by: Codex/gpt-5.6-terra <codex-gpt-5-6-terra@agents.invalid>
21 lines
791 B
Python
21 lines
791 B
Python
"""Étape de comparaison de l'agenda réel avec l'agenda théorique."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from pronote_sync.models.diff import AgendaDiff
|
|
from pronote_sync.models.pronote import PronoteData
|
|
from pronote_sync.sync.diff import AgendaComparator
|
|
|
|
|
|
def compare_step(comparator: AgendaComparator | None, data: PronoteData) -> AgendaDiff:
|
|
"""Compare l'agenda ou retourne un diff vide si la comparaison est désactivée.
|
|
|
|
:param comparator: Comparateur configuré, ou ``None`` sans agenda théorique.
|
|
:param data: Données Pronote normalisées.
|
|
:return: Diff d'agenda pour la date cible.
|
|
:rtype: AgendaDiff
|
|
"""
|
|
if comparator is None:
|
|
return AgendaDiff(target_date=data.target_date)
|
|
return comparator.compare(data.lessons, data.target_date)
|