Valider une enquête existante. #22
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Titre
Valider une enquête existante.
Objectif
Ajouter au module
InvestigationProjectla capacité de vérifier qu’un dossiercorrespond bien à une enquête Labfy Investigation valide.
La validation doit contrôler la présence et le type des éléments obligatoires,
sans modifier le contenu du dossier.
Architecture
Toute ouverture d’enquête existante doit passer par
InvestigationProject.La GUI ne doit jamais décider seule si un dossier est valide.
Responsabilités
InvestigationProject
Le module doit :
00_BaseDeDonnees/Enquete.sqlite;Enquete.sqliteest un fichier régulier ;Interface publique attendue
Faire évoluer :
Ajouter :
Contrat
La fonction retourne :
si le dossier est une enquête valide.
Elle retourne :
si :
Enquete.sqlitemanque ;Enquete.sqliten’est pas un fichier régulier.La fonction ne doit jamais modifier le système de fichiers.
Structure obligatoire
Les dossiers suivants doivent exister :
Les sous-dossiers suivants doivent également exister :
Le fichier suivant doit exister :
Réutilisation de la structure déclarative
La validation doit réutiliser la même liste de chemins que la création.
Il ne doit pas exister deux listes indépendantes décrivant l’arborescence.
La structure de référence doit rester centralisée dans
investigation_project.c.Hors périmètre
Ce ticket ne doit pas :
Gestion des erreurs
Dans ce ticket, la fonction retourne uniquement un booléen.
Les détails d’erreur plus précis pourront être ajoutés plus tard avec :
ou une énumération métier dédiée.
La validation ne doit produire aucun
g_warning()pour un dossier simplementinvalide : un résultat
falsesuffit.Contraintes techniques
Tests
Faire évoluer :
Le test doit vérifier :
NULLest refusé ;Enquete.sqliteest refusée ;Critères d’acceptation
make testreste entièrement valide.investigation_project_create()est valide.Enquete.sqliteincorrect est refusé.Gtk-CRITICAL.Commit attendu