1312,7 → 1312,13 |
* Test #37 |
*/ |
private function testerGroupeCultivarSyntaxe() { |
$info = $this->getInfosTest(37); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1341,9 → 1347,10 |
* Test #38 |
*/ |
private function testerGroupeCultivarRang() { |
$info = $this->getInfosTest(38); |
$info['nom'] = sprintf($info['nom'], $this->manuel['rang_genre']); |
$info['description'] = sprintf($info['description'], $this->manuel['rang_genre']); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1371,8 → 1378,19 |
* Test #39 |
*/ |
private function testerCultivarSyntaxe() { |
$info = $this->getInfosTest(39); |
|
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
foreach ($this->noms as &$nom) { |
1400,9 → 1418,10 |
* Test #40 |
*/ |
private function testerCultivarRang() { |
$info = $this->getInfosTest(40); |
$info['nom'] = sprintf($info['nom'], $this->manuel['rang_genre']); |
$info['description'] = sprintf($info['description'], $this->manuel['rang_genre']); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1430,7 → 1449,11 |
* Test #41 |
*/ |
private function testerNomCommercialSyntaxe() { |
$info = $this->getInfosTest(41); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1459,7 → 1482,10 |
* Test #42 |
*/ |
private function testerNomCommercialPresenceCultivar() { |
$info = $this->getInfosTest(42); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1485,7 → 1511,19 |
* Test #43 |
*/ |
private function testerAuteurSyntaxe() { |
$info = $this->getInfosTest(43); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1514,7 → 1552,11 |
* Test #44 |
*/ |
private function testerAnneeSyntaxe() { |
$info = $this->getInfosTest(44); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1528,7 → 1570,7 |
|
// Analyse des résultats |
if (count($noms_erreur) > 0) { |
$info['message']['entete'] = array('num_nom', 'annee erronée'); |
$info['message']['entete'] = array('num_nom', 'annee erroné'); |
$info['message']['lignes'] = $noms_erreur; |
} else { |
$info['resultat'] = true; |
1542,7 → 1584,23 |
* Test #45 |
*/ |
private function testerBiblioOrigineSyntaxe() { |
$info = $this->getInfosTest(45); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1571,7 → 1629,11 |
* Test #46 |
*/ |
private function testerHomonymieSyntaxe() { |
$info = $this->getInfosTest(46); |
$info = array('nom' => 'homonyme -> syntaxe', |
'description' => "Le champ homonyme contient :\n". |
" - une valeur vide,\n". |
" - le chiffre 1.", |
'resultat' => false); |
|
// Réalisation du test |
$noms_erreur = array(); |
1599,7 → 1661,10 |
* Test #47 |
*/ |
private function testerHomonymieExistence() { |
$info = $this->getInfosTest(47); |
$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); |
|
$noms_homonymie = $this->classerNomsParNomComplet(); |
|
1630,7 → 1695,11 |
* Test #48 |
*/ |
private function testerBasionymeSyntaxe() { |
$info = $this->getInfosTest(48); |
$info = array('nom' => 'basionyme -> syntaxe', |
'description' => "Le champ basionyme contient :\n". |
" - une valeur vide,\n". |
" - un nombre.", |
'resultat' => false); |
|
// Réalisation du test |
$noms_erreur = array(); |
1658,7 → 1727,10 |
* Test #49 |
*/ |
private function testerBasionymeExistence() { |
$info = $this->getInfosTest(49); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |
1686,7 → 1758,12 |
* Test #50 |
*/ |
private function testerSynonymeProparteSyntaxe() { |
$info = $this->getInfosTest(50); |
$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); |
|
// Réalisation du test |
$noms_erreur = array(); |