[(#REM)
tester # NOTES et ses particularismes
Il manque le test sur un < INCLURE > a cache plus court qui est calcule alors que l'appelant ne l'est pas
cas qui foire jusqu'a ce jour (7/02/2010) car lorsque seul l'incure dynamique est calcule, le marqueur de note
est a zero.
Solution possible a creuser : appeler en fin de calcul un filtre qui genere le php (en debut de skel)
qui restaure l'etat de la pile des notes : ainsi lors de l'evaluation dynamique, les notes sont synchro
]
[(#REM) une note simple ]
#SET{appelnote,#EVAL{'"
a ".chr(91)."1".chr(93)."
"'}}
#SET{lanote,#EVAL{'"\n"."
".chr(91)."1".chr(93)." b
\n
"'}}
#SET{test1,#EVAL{'"a".chr(91).chr(91)."b".chr(93).chr(93)'}|propre}
[(#GET{test1}|=={#GET{appelnote}}|?{'',#SET{err,'erreur appel note simple'}})]
#SET{notes,#NOTES}
[(#GET{notes}|=={#GET{lanote}}|?{'',#SET{err,#VAL{'erreur note simple :'}|concat{#GET{notes},' vs ',#GET{lanote}}}})]
[(#REM) une deuxieme note simple qui doit etre numerotee differement de la premiere deja affichee]
#SET{test2,#EVAL{'"a".chr(91).chr(91)."b".chr(93).chr(93)'}|propre}
#SET{notes2,#NOTES}
[(#GET{test1}|=={#GET{test2}}|?{#SET{err,'Le compteur de note n'a pas ete incremente au meme niveau'}})]
[(#REM) une note simple affichee dans une inclusion qui doit etre numerotee differement des deux premieres]
#SET{notes3,#INCLURE{fond=note_inclue_affichee}}
[(#GET{notes3}|=={#GET{notes}}|?{#SET{err,'Le compteur de note n'a pas ete incremente dans l'inclusion'}})]
[(#GET{notes3}|=={#GET{notes2}}|?{#SET{err,'Le compteur de note n'a pas ete incremente dans l'inclusion2'}})]
[(#REM) verifier que la note simple apres inclusion est bien numerotee encore differemment]
#SET{test4,#EVAL{'"a".chr(91).chr(91)."b".chr(93).chr(93)'}|propre}
#SET{notes4,#NOTES}
[(#GET{notes4}|=={#GET{notes}}|?{#SET{err,'Le compteur de note n'a pas ete incremente apres l'inclusion'}})]
[(#GET{notes4}|=={#GET{notes2}}|?{#SET{err,'Le compteur de note n'a pas ete incremente apres l'inclusion2'}})]
[(#GET{notes4}|=={#GET{notes3}}|?{#SET{err,'Le compteur de note n'a pas ete incremente apres l'inclusion3'}})]
[(#REM) une note simple ajoutee dans une inclusion mais non affichee qui doit etre purgee avant retour ici ]
[(#INCLURE{fond=note_inclue_nonaffichee}|vide)]
#SET{notes5,#NOTES}
[(#GET{notes5}|oui)#SET{err,'La note inclue n'a pas ete purgee'}]
[(#REM) une note appelee explicitement ]
[(#EVAL{'"a".chr(91).chr(91)."c".chr(93).chr(93)'}|propre|?)]
[(#NOTES|supprimer_tags|match{^.b. \s*c$}|?{'',#SET{err,'erreur note <b>'}})]
[(#REM) une note appelee explicitement ]
[(#EVAL{'"eh".chr(91).chr(91)."oh".chr(93).chr(93)'}|propre|?)]
[(#NOTES|PtoBR|match{.a. \s*oh$}|?{'',#SET{err,'erreur note <a>'}})]
[(#REM) une note appelee explicitement avec un lien dedans]
[(#EVAL{'"ki".chr(91).chr(91)."uh".chr(93).chr(93)'}|propre|?)]
[(#NOTES|PtoBR|match{.a. }|?{'',#SET{err,'erreur note <a> avec lien'}})]
[(#REM) une note appelee explicitement vide ]
[(#EVAL{'"a".chr(91).chr(91)."<>d".chr(93).chr(93)'}|propre|?)]
[(#NOTES|supprimer_tags|match{^d$}|?{'',#SET{err,'erreur note <d>'}})]
[(#REM) une note appelee explicitement avec une espace au debut ]
[(#EVAL{'"a".chr(91).chr(91)." f".chr(93).chr(93)'}|propre|?)]
[(#NOTES|supprimer_tags|match{^.e. \s*f$}|?{'',#SET{err,'erreur note <e>'}})]
[(#REM) une note appelee avec une construction html equilibree ]
[(#EVAL{'"g".chr(91).chr(91)." h".chr(93).chr(93)'}|propre|?)]
[(#NOTES|supprimer_tags|match{^.1. \s*h$}|?{'',#SET{err,'erreur note <g>'}})]
[(#REM) une note appelee avec un caractere sensible ]
[(#EVAL{'"j".chr(91).chr(91)." <*>k".chr(93).chr(93)'}|propre|?)]
[(#NOTES|PtoBR|match{.\*. k$}|?{'',#SET{err,'erreur note <j>'}})]
[(#GET{err}|sinon{OK})]