Subversion Repositories Applications.referentiel

Compare Revisions

Ignore whitespace Rev 173 → Rev 174

/trunk/scripts/modules/tests/Tests.php
1312,13 → 1312,7
* Test #37
*/
private function testerGroupeCultivarSyntaxe() {
$info = array('nom' => 'cultivar_groupe -> syntaxe',
'description' => "Le champ cultivar_groupe doit contenir un nom de groupe de cultivar conforme aux règles ".
"du code des plantes cultivées, c.-à-d. composer de caractères alphanumériques (A-Z,a-z et 0-9) incluant ".
"signes diacritiques et marques de ponctuations.\n".
"Il ne doit pas contenir le mot Groupe, l'abbréviation «gp» ou des parenthèses.\n".
"Il peut se terminer par l'abréviation «gx» pour distinguer les groupes des grex.",
'resultat' => false);
$info = $this->getInfosTest(37);
// Réalisation du test
$noms_erreur = array();
1347,10 → 1341,9
* Test #38
*/
private function testerGroupeCultivarRang() {
$info = array('nom' => "cultivar_groupe -> rang >= {$this->manuel['rang_genre']}",
'description' => "Si le champ cultivar_groupe n'est pas vide alors le rang du nom doit être supérieur ou ".
"égal à {$this->manuel['rang_genre']}.",
'resultat' => false);
$info = $this->getInfosTest(38);
$info['nom'] = sprintf($info['nom'], $this->manuel['rang_genre']);
$info['description'] = sprintf($info['description'], $this->manuel['rang_genre']);
// Réalisation du test
$noms_erreur = array();
1378,19 → 1371,8
* Test #39
*/
private function testerCultivarSyntaxe() {
$info = array('nom' => 'cultivar -> syntaxe',
'description' => "Le champ cultivar_groupe doit contenir :\n".
" - un nom de cultivar conforme aux règles du Code Internationnal de Nomenclature \n".
" des Plantes Cultivées (CINPC), c.-à-d. composer de caractères alphanumériques \n".
" (A-Z,a-z et 0-9) incluant signes diacritiques et marques de ponctuations.\n".
" - un nom en alphabet latin, ce qui implique une translittération des noms d'alphabet \n".
" cyrillique, arabe, chinois...\n".
" - une lettre majuscule obligatoire pour le premier caractère du premier mot et pour \n".
" les autres mots importants mais pas pour les mots mineurs.\n".
"Ne doit pas contenir :\n".
" - cv., convar. ou de guillemets simples (').\n",
'resultat' => false);
$info = $this->getInfosTest(39);
 
// Réalisation du test
$noms_erreur = array();
foreach ($this->noms as &$nom) {
1418,10 → 1400,9
* Test #40
*/
private function testerCultivarRang() {
$info = array('nom' => "cultivar -> rang >= {$this->manuel['rang_genre']}",
'description' => "Si le champ cultivar n'est pas vide alors le rang du nom doit être supérieur ou égal à ".
"{$this->manuel['rang_genre']}.",
'resultat' => false);
$info = $this->getInfosTest(40);
$info['nom'] = sprintf($info['nom'], $this->manuel['rang_genre']);
$info['description'] = sprintf($info['description'], $this->manuel['rang_genre']);
// Réalisation du test
$noms_erreur = array();
1449,11 → 1430,7
* Test #41
*/
private function testerNomCommercialSyntaxe() {
$info = array('nom' => 'nom_commercial -> syntaxe',
'description' => "Le champ nom_commercial doit contenir un nom commercial conforme aux règles du ".
"Code Internationnal de Nomenclature des Plantes Cultivées (CINPC) ".
"qui se compose de caractères majuscules (A-Z) incluant des signes diacritiques et des espaces.\n",
'resultat' => false);
$info = $this->getInfosTest(41);
// Réalisation du test
$noms_erreur = array();
1482,10 → 1459,7
* Test #42
*/
private function testerNomCommercialPresenceCultivar() {
$info = array('nom' => 'nom_commercial -> groupe_cultivar OU cultivar non vide',
'description' => "Si le champ nom_commercial contient un nom commercial alors le champ cultivar OU ".
"cultivar_groupe ne doit pas être vide.",
'resultat' => false);
$info = $this->getInfosTest(42);
// Réalisation du test
$noms_erreur = array();
1511,19 → 1485,7
* Test #43
*/
private function testerAuteurSyntaxe() {
$info = array('nom' => 'auteur -> syntaxe',
'description' => "Le champ auteur doit :\n".
" - contenir l'intitulé complet des noms de l'auteur, ou des auteurs, ayant publié à l'origine la combinaison latine courante.\n".
" - OU débuter par le mot « sensu » et contenir l'intitulé complet des noms de l'auteur, ou des auteurs, ".
"ayant publié un nom dont la description ne correspond pas à celle de l'auteur, ou des auteurs, d'origine.\n".
" - se composer de caractères alphabétiques (A-Z, a-z), incluant les signes diacritiques, le symbole point (.), les paires de parenthèses ( () ), les apostrophes, l'esperluette (&) et l'espace ( ).\n".
" - contenir, si nécessaire, des abréviations de noms d'auteurs respectant les standards.\n".
" - contenir une translittération des noms d'alphabet cyrillique, arabe, chinois... en alphabet latin.\n".
" - inclure entre parenthèses l'intitulé des noms de l'auteur ou des auteurs ayant publié le basionyme.\n".
" - toujours utiliser l'esperluette (&) à la place du mot « et » pour séparer les noms d'auteurs.\n".
" - conformément à la recommandation 46C.2 du CINB, si une un citation comprend plus de deux auteurs, ".
"elle devrait être limitée au nom du premier, suivi de « & al.».\n",
'resultat' => false);
$info = $this->getInfosTest(43);
// Réalisation du test
$noms_erreur = array();
1552,11 → 1514,7
* Test #44
*/
private function testerAnneeSyntaxe() {
$info = array('nom' => 'annee -> syntaxe',
'description' => "Le champ annee doit :\n".
" - contenir un nombre de 4 chiffres,\n".
" - être supérieur ou égal à 1753.",
'resultat' => false);
$info = $this->getInfosTest(44);
// Réalisation du test
$noms_erreur = array();
1570,7 → 1528,7
// Analyse des résultats
if (count($noms_erreur) > 0) {
$info['message']['entete'] = array('num_nom', 'annee erroné');
$info['message']['entete'] = array('num_nom', 'annee erronée');
$info['message']['lignes'] = $noms_erreur;
} else {
$info['resultat'] = true;
1584,23 → 1542,7
* Test #45
*/
private function testerBiblioOrigineSyntaxe() {
$info = array('nom' => 'biblio_origine -> syntaxe',
'description' => "Le champ biblio_origine se compose de plusieurs parties séparées par des caractères ".
"précis qui sont dans l'ordre de gauche à droite :\n".
" - éventuellement, le mot « in » suivi d'un intitulé auteur (utilisé pour indiquer l'intitulé auteur de ".
"l'ouvrage dans lequel la publication est parue),\n".
" - point-virgule « ; » (si l'info précédent a été renseignée),\n".
" - abréviation, ou nom, de l'ouvrage ou de la revue selon le standard en vigueur dans le code du nom. ".
"Cette information ne doit pas contenir de caractère virgule « , »,\n".
" - virgule « , »,\n".
" - informations permettant d'identifier plus précisément le document contenant le nom... ".
"(par exemple, l'éditeur, le tome, le numéro d'édition, le volume...) séparées par des virgules ou d'autres ".
"caractères sauf deux points « : ».\n".
" - deux points « : »,\n".
" - numéro(s) de la page contenant la publication du nom ou de l'ensemble de pages (première et dernière ".
"pages de l'ensemble séparées par un tiret « - »). Quelques fois des numéros ou d'autres informations indiquant ".
"la position du nom dans le document. Le tiret « - » doit toujours servir à séparer un ensemble.",
'resultat' => false);
$info = $this->getInfosTest(45);
// Réalisation du test
$noms_erreur = array();
1629,11 → 1571,7
* Test #46
*/
private function testerHomonymieSyntaxe() {
$info = array('nom' => 'homonyme -> syntaxe',
'description' => "Le champ homonyme contient :\n".
" - une valeur vide,\n".
" - le chiffre 1.",
'resultat' => false);
$info = $this->getInfosTest(46);
// Réalisation du test
$noms_erreur = array();
1661,10 → 1599,7
* Test #47
*/
private function testerHomonymieExistence() {
$info = array('nom' => 'homonyme -> existence',
'description' => "Si le champ homonyme contient «1» alors plusieurs noms doivent posséder la même valeur ".
"dans le champ nom_sci.",
'resultat' => false);
$info = $this->getInfosTest(47);
$noms_homonymie = $this->classerNomsParNomComplet();
1695,11 → 1630,7
* Test #48
*/
private function testerBasionymeSyntaxe() {
$info = array('nom' => 'basionyme -> syntaxe',
'description' => "Le champ basionyme contient :\n".
" - une valeur vide,\n".
" - un nombre.",
'resultat' => false);
$info = $this->getInfosTest(48);
// Réalisation du test
$noms_erreur = array();
1727,10 → 1658,7
* Test #49
*/
private function testerBasionymeExistence() {
$info = array('nom' => 'basionyme -> existence',
'description' => "Si le champ basionyme contient un nombre alors il doit correspondre à une valeur du champ ".
"num_nom.",
'resultat' => false);
$info = $this->getInfosTest(49);
// Réalisation du test
$noms_erreur = array();
1758,12 → 1686,7
* Test #50
*/
private function testerSynonymeProparteSyntaxe() {
$info = array('nom' => 'synonyme_proparte -> syntaxe',
'description' => "Le champ synonyme_proparte contient soit :\n".
" - une valeur vide,\n".
" - un nombre,\n".
" - une suite de nombres séparés par des virgules.",
'resultat' => false);
$info = $this->getInfosTest(50);
// Réalisation du test
$noms_erreur = array();