Retour : Page Principale > sommaire applications botanique > Appli Référentiel
Notes :
Solution : Solution portable pour exécuter un script php CLI depuis une page web
Tests :
Les valeurs, noms... de références seront stockées dans des fichiers ini pour simplifier la gestion des tests.
Les règles listées dans le manuel doivent être vérifiées.
Tests :
Référentiel - Cahier des charges v1
Général
Ă€ faire avant toute chose
- VĂ©rifier que le port ODBC est ouvert sur le nouveau serveur
- Migrer bdnff.tela-botanica.org sur le nouveau serveur
- Changer le nom du sous-domaine pour : referentiels.tela-botanica.org
- Prévenir Benoît des modifications
- Vérifier avec lui que le système ODBC fonctionne toujours
- Mettre en place PhpEdit sur la table correspondant au manuel technique
Les tables
- Les tables de l'application de gestion des référentiels :
- ref_triplets
- Les tables de chaque projet :
- bdnff_meta : contient les méta-données de chaque version livrée
- bdnff_travail : contient les données en cours de travail
- bdnff_historique : contient les données de bdnff_travail mais versionnées (clé primaire : num_nom + version ; chp supplémentaire : date)
- bdnff_v# : une table pour chaque version, qui est une copie de la table de travail
Interfaces
Développer les interfaces suivantes dans l'ordre indiqué.Notes :
- Utiliser des services web (JRest) pour l'accès à la bdd
1. RĂ©alisation de tests
Problème : tester plusieurs centaines de millier d'enregistrements dépasse le temps limite de 30s d'exécution d'une page web.Solution : Solution portable pour exécuter un script php CLI depuis une page web
Tests :
Les valeurs, noms... de références seront stockées dans des fichiers ini pour simplifier la gestion des tests.
Les règles listées dans le manuel doivent être vérifiées.
Tests :
- VĂ©rifier que le nombre de champs est > ou Ă©gal au nombre de champs attendu
- VĂ©rifier que les noms des champs sont conformes
- VĂ©rifier que les champs sont du bon type
- Vérifier qu'aucune donnée n'a atteint la limite du champ. Pour un champ de 100 caractères vérifier qu'aucune ligne possède 100 caractères pour ce champ. Cela pourrait signifier que le champ a été tronqué.
- num_nom :
- doit contenir une valeur numérique > à 0
- num_nom_retenu :
- doit contenir une valeur numérique > à 0 ou NULL
- pour une groupe de noms ayant le même num_nom_retenu, un seul doit avoir num_nom_retenu = num_nom -> impossible à repérer par test
- num_tax_sup :
- pour chaque enregistrement, on doit pouvoir remonter la classification jusqu'à un même nom unique possédant une valeur de rang de 0.
- pour chaque enregistrement, chaque nom supérieur doit avoir un rang inférieur au nom de l'enregistrement courant
- rang :
- doit contenir une valeur numérique > à 0
- nom_complet :
- doit pouvoir être reconstruit depuis les champs comportant des morceaux du nom (voir les règles du manuel p13)
- epithete_infra_generique :
- si possède une épithete infra-générique le champ rang doit respecter cette formule : 220 < rang < 290
- cultivar :
- vérifier que le champ type_epithete ne contienne pas cv. ou convar.
2. Accueil
- Faire une page d'accueil !
- les liens vers différents référentiels à partir des tables meta de chaque projet
- avec la description du programme Texte page d'accueil
3. Versionnage
- Deux interfaces :
- une pour créer des versions
- L'interface doit permettre de saisir les nouvelles méta-données de la version
- Une copie de la table de travail sera faite avec le nouveau numéro de version
- une pour consulter les méta-données des versions livrées et obtenir les fichiers zip :
- Elle doit permettre de créer les fichiers zip partiel et complet pour chaque version
- une pour créer des versions
4. Consultation
- Prendre exemple sur l'interface de http://gni.globalnames.org/name_strings?expand=A
- Pour les fiches de chaque enregistrement, voir les impressions écran des outils de Benoît
- Si l'historique est activé, consulté les fiches historisées
5. Script d'historique
- un cron sur le serveur va historiser les différences chaque jour