:- encoding(utf8).
:- use_module(library(plunit)).
:- use_module(library(aggregate)).
:- use_module('../prolog/marronniers').

:- begin_tests(marronniers).

test(nombre_de_faits, N == 139) :-
    aggregate_all(count, marronnier(_, _, _, _), N).

test(accents_intacts, [nondet]) :-
    marronnier(date(2026,9,16), 'Semaine europÃ©enne de la mobilitÃ©', journee, _).

test(marronniers_du_mois) :-
    marronniers_du_mois(2027, 8, L),
    L == [date(2027,8,15)-'Assomption (jour fÃ©riÃ©)'].

test(prochain_marronnier) :-
    prochain_marronnier(date(2026,9,15), marronnier(D, N, C, _)),
    D == date(2026,9,16),
    N == 'Semaine europÃ©enne de la mobilitÃ©',
    C == journee.

test(marronniers_par_categorie, Len == 14) :-
    marronniers_par_categorie(ferie, Noms),
    length(Noms, Len).

:- end_tests(marronniers).
