#INSERT_HEAD_CSS
[(#UNIT|non)
On peut tester logé administrateur sur un navigateur, et non identifié sur un autre navigateur :
ça permet de comparer les résultats.
Pour tester non identifié, il faut mettre un define('CACHELAB_DATE_TESTS','2018-12-12') à la date du jour de test ou à 'TOUJOURS'
dans votre fichier d'options
Dans le menu de chaque test, «recalcul et assert
» active les assertions, et «recalcul et var_cache
» active la visualisation des infos de sessionnement des caches
Dans les noisette testée*, il y a une assertion sur le sessionnement qui affiche une erreur si le sessionnement n'est pas comme attendu (* Certaines des inclusions de cachetests/inclure ne le sont pas.) Dans le "test des tests", 2 erreurs sont commises intentionnellement : elles permettent de tester les assertions. La version buguée de SPIP n'en détecte qu'une seule.
Avec Memoization par APC ou APCu, XRay permet visualiser les contenus des caches et leurs métadonnées. On trouve les caches concernés en cherchant 'cachetests/'. La sélection "Caches sessionnés" et l'option d'affichage "Squelettes" (Liste XRay des caches sessionnés) donne la liste des squelettes sessionnés. Aprés être passé sur tous les tests sans recalculer (sinon ça vide les caches !), ces listes sont les suivantes :
- Avec le fix : \[ statique_B.html, dynamique_B.html, emboite_A.html, emboite_C.html, inclure/erreur_sessionne.html, suite_statique.html, suite_modele.html, emboite_B.html \]
- Sans le fix : les mêmes plus \[ dynamique_C.html, dynamique_D.html, inclure/dyn_B.html, inclure/dyn_C.html, inclure/erreur_non_sessionne.html, inclure/stat_C.html, statique_C.html, statique_D.html \] qui sont induement sessionnés.
]
[(#UNIT|non)
Tests
- test des tests
Vérifie le bon fonctionnement des assertions : produit 2 asserts intentionnels.
test_des_tests(erreur_sessionne dyn_B erreur_non_sessionne dyn_C)
- emboite_A
Sessionnement des inclure mixtes gigognes : A inclue statiquement B qui inclue dynamiquement C qui est sessionné
emboite_A(#emboite_B())
- suite_statique
Sessionnement d'une suite de 4 inclusions statiques.
La 2eme est sessionnée.
La 2eme et la 3eme font 1 inclusion statique et 1 dynamique
suite_statique( #statique_A,
#statique_B SESSIONNÉ( #include/statB, )
#statique_C(#include/statC, )
#statique_D )
- suite_dynamique
Sessionnement d'une suite de 4 inclusions dynamiques.
La 2eme est sessionnée.
La 2eme et la 3eme font 1 inclusion statique et 1 dynamique
suite_dynamique( #dynamique_A
#dynamique_B SESSIONNÉ( #include/statB, )
#dynamique_C(#include/statC, )
#dynamique_D )
- suite_modele
Sessionnement d'une suite de 4 inclusions de modeles dans le squelette.
Le 2eme modèle est sessionné.
Le 2eme et le 3eme font 1 inclusion statique et 1 dynamique
suite_modele( MODELE test_modele_A
MODELE test_modele_B SESSIONNÉ( #include/statB, )
MODELE test_modele_C(#include/statC, )
MODELE test_modele_D )
]
[(#ENV{unit}|oui)
#SET{var_recalcul,#ENV{var_mode}|=={recalcul}}
test : #UNIT
]