# Graph Settings Accordion - Testing Checklist ## đŸ§Ș Checklist de test manuel ### 1. FonctionnalitĂ©s de base #### Ouverture/Fermeture - [ ] Cliquer sur "FILTERS" ouvre/ferme la section - [ ] Cliquer sur "GROUPS" ouvre/ferme la section - [ ] Cliquer sur "DISPLAY" ouvre/ferme la section - [ ] Cliquer sur "FORCES" ouvre/ferme la section - [ ] Plusieurs sections peuvent ĂȘtre ouvertes simultanĂ©ment - [ ] L'icĂŽne chevron pivote Ă  180° quand ouvert #### Animation - [ ] L'animation d'ouverture est fluide (200ms) - [ ] L'animation de fermeture est fluide (200ms) - [ ] Pas de saccade (jank) visible - [ ] Le contenu ne dĂ©borde pas pendant l'animation - [ ] L'animation fonctionne sur tous les navigateurs (Chrome, Firefox, Edge) #### Persistance - [ ] Ouvrir "Groups", recharger la page → "Groups" reste ouvert - [ ] Fermer "Filters", recharger la page → "Filters" reste fermĂ© - [ ] Ouvrir plusieurs sections, recharger → toutes restent ouvertes - [ ] État initial par dĂ©faut : "Filters" ouvert uniquement ### 2. AccessibilitĂ© (A11y) #### Navigation clavier - [ ] Tab : Focus se dĂ©place entre les headers - [ ] Enter sur un header : Toggle la section - [ ] Espace sur un header : Toggle la section - [ ] Shift+Tab : Navigation inverse fonctionne - [ ] Le focus est visible (outline bleu) #### Attributs ARIA - [ ] Inspecter : `aria-expanded="true"` quand ouvert - [ ] Inspecter : `aria-expanded="false"` quand fermĂ© - [ ] Inspecter : `aria-controls` pointe vers l'ID du panel - [ ] Inspecter : Panel a `role="region"` - [ ] Inspecter : `aria-labelledby` sur le panel #### Lecteur d'Ă©cran (optionnel) - [ ] NVDA/JAWS annonce "expanded" / "collapsed" - [ ] Le titre de la section est annoncĂ© - [ ] Le contenu est accessible ### 3. Modes Dark/Light #### Light Mode - [ ] Borders : gris clair visible - [ ] Background : blanc/gris trĂšs clair - [ ] Text : gris foncĂ© lisible - [ ] Hover : background change lĂ©gĂšrement - [ ] Section active : border bleue visible - [ ] Shadow : subtile et Ă©lĂ©gante #### Dark Mode - [ ] Activer dark mode (toggle dans l'app) - [ ] Borders : gris foncĂ© visible - [ ] Background : gris trĂšs foncĂ© / noir - [ ] Text : blanc/gris clair lisible - [ ] Hover : background change lĂ©gĂšrement - [ ] Section active : border bleue visible - [ ] Shadow : adaptĂ©e au dark mode #### Transition Light ↔ Dark - [ ] Passer de light Ă  dark : transition fluide - [ ] Passer de dark Ă  light : transition fluide - [ ] Pas de flash ou de couleur incorrecte ### 4. Responsive / Mobile #### Desktop (> 768px) - [ ] AccordĂ©on s'affiche correctement - [ ] Largeur du panel : 400px max - [ ] Scroll vertical si contenu dĂ©passe #### Tablet (768px) - [ ] AccordĂ©on s'affiche correctement - [ ] Panel prend toute la largeur #### Mobile (< 768px) - [ ] AccordĂ©on s'affiche correctement - [ ] Panel prend toute la largeur - [ ] Touch : tap sur header fonctionne - [ ] Scroll vertical fonctionne - [ ] Pas de dĂ©bordement horizontal ### 5. Contenu des sections #### Filters - [ ] Search input visible et fonctionnel - [ ] Checkboxes : Tags, Attachments, Existing files only, Orphans - [ ] Changements persistĂ©s dans graph.json #### Groups - [ ] Liste des color groups affichĂ©e - [ ] Bouton "New group" fonctionne - [ ] Color picker fonctionne - [ ] Input query fonctionne - [ ] Boutons duplicate/delete fonctionnent - [ ] Changements persistĂ©s #### Display - [ ] Checkbox "Arrows" fonctionne - [ ] Slider "Text fade threshold" fonctionne - [ ] Slider "Node size" fonctionne - [ ] Slider "Link thickness" fonctionne - [ ] Bouton "Animate" fonctionne - [ ] Valeurs affichĂ©es en temps rĂ©el - [ ] Changements persistĂ©s #### Forces - [ ] Slider "Center force" fonctionne - [ ] Slider "Repel force" fonctionne - [ ] Slider "Link force" fonctionne - [ ] Slider "Link distance" fonctionne - [ ] Valeurs affichĂ©es en temps rĂ©el - [ ] Changements persistĂ©s ### 6. Toggle "Collapse All / Expand All" - [ ] Bouton visible en bas de l'accordĂ©on - [ ] Texte : "Expand all" quand au moins une section fermĂ©e - [ ] Texte : "Collapse all" quand toutes ouvertes - [ ] Cliquer "Expand all" : ouvre toutes les sections - [ ] Cliquer "Collapse all" : ferme toutes les sections - [ ] État persistĂ© aprĂšs rechargement ### 7. Performance #### Rendu conditionnel - [ ] Ouvrir DevTools > Elements - [ ] Inspecter une section fermĂ©e : contenu absent du DOM - [ ] Ouvrir la section : contenu apparaĂźt dans le DOM - [ ] Fermer la section : contenu reste dans le DOM (Angular garde le template) #### Change Detection - [ ] Ouvrir DevTools > Performance - [ ] Enregistrer : ouvrir/fermer plusieurs sections - [ ] VĂ©rifier : pas de re-render massif - [ ] Frame rate : stable Ă  60 FPS #### Memory Leaks - [ ] Ouvrir/fermer sections 50 fois - [ ] DevTools > Memory > Take snapshot - [ ] VĂ©rifier : pas d'augmentation anormale de mĂ©moire ### 8. IntĂ©gration #### Panel Settings - [ ] Bouton "Graph settings" ouvre le panel - [ ] AccordĂ©on s'affiche dans le panel - [ ] Bouton "Reset all" fonctionne (avec confirmation) - [ ] Bouton "Close" (X) ferme le panel - [ ] Escape ferme le panel - [ ] Cliquer sur backdrop ferme le panel #### Synchronisation - [ ] Modifier un setting dans l'accordĂ©on - [ ] VĂ©rifier : graph se met Ă  jour en temps rĂ©el - [ ] Modifier `.obsidian/graph.json` manuellement - [ ] VĂ©rifier : accordĂ©on se met Ă  jour (polling 2s) ### 9. Edge Cases #### DonnĂ©es invalides - [ ] graph.json vide : utilise les defaults - [ ] graph.json corrompu : utilise les defaults - [ ] Valeurs hors limites : clampĂ©es automatiquement #### Conflits - [ ] Modifier graph.json pendant que panel ouvert - [ ] VĂ©rifier : dĂ©tection de conflit et reload #### Erreurs rĂ©seau - [ ] Simuler erreur 500 sur `/api/vault/graph` - [ ] VĂ©rifier : fallback sur defaults, pas de crash ### 10. Build & Production - [ ] `npm run build` : succĂšs sans erreur - [ ] `npm run build` : pas de warning critique - [ ] Build production : tester en mode preview - [ ] Bundle size : vĂ©rifier impact (devrait ĂȘtre neutre ou nĂ©gatif) ## 🐛 Bugs connus / À surveiller - [ ] Safari : animation grid parfois saccadĂ©e (iOS < 16) - [ ] Firefox : focus outline peut ĂȘtre trop Ă©pais - [ ] Edge : color picker style peut diffĂ©rer ## ✅ RĂ©sultat final **Date du test** : ___________ **Testeur** : ___________ **Navigateur(s)** : ___________ **OS** : ___________ **Nombre de tests rĂ©ussis** : ___ / ___ **Bugs critiques** : ___ **Bugs mineurs** : ___ **Validation** : ☐ ApprouvĂ© ☐ À corriger --- ## 📝 Notes de test _(Espace pour notes additionnelles)_