Subversion Repositories Applications.referentiel

Compare Revisions

Ignore whitespace Rev 163 → Rev 164

/trunk/scripts/modules/tests/Tests.php
209,10 → 209,10
private function testerStatutCultureSyntaxe() {
$info = array('nom' => 'statut_culture -> syntaxe',
'description' => "Le champ statut_culture peut contenir :\n".
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon,\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon,\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
'resultat' => false);
// Réalisation du test
240,10 → 240,10
private function testerStatutIntroductionSyntaxe() {
$info = array('nom' => 'statut_introduction -> syntaxe',
'description' => "Le champ statut_introduction peut contenir :\n".
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon,\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon,\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
'resultat' => false);
// Réalisation du test
271,10 → 271,10
private function testerStatutOrigineSyntaxe() {
$info = array('nom' => 'statut_origine -> syntaxe',
'description' => "Le champ statut_origine peut contenir :\n".
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon.\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon.\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
'resultat' => false);
// Réalisation du test
302,10 → 302,10
private function testerPresenceSyntaxe() {
$info = array('nom' => 'presence -> syntaxe',
'description' => "Le champ presence contient soit :\n".
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon,\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
" - le symbole tiret «-» précédant une autre information non référencée...\n".
" - une première lettre en majuscule indiquant le code standard attribué à ce taxon,\n".
" - éventuellement suivie d'un tiret puis d'une deuxième lettre en majuscule indiquant ".
"un code de présence spécifique au référentiel.",
'resultat' => false);
// Réalisation du test
332,8 → 332,8
private function testerHybrideParent02Existence() {
$info = array('nom' => 'hybride_parent_02 -> existence',
'description' => "Si le champ hybride_parent_02 contient un nombre alors il doit correspondre à une valeur du champ ".
"num_nom.",
'description' => "Si le champ hybride_parent_02 contient un nombre alors il doit correspondre à une valeur ".
"du champ num_nom.",
'resultat' => false);
// Réalisation du test
361,8 → 361,8
private function testerHybrideParent02Syntaxe() {
$info = array('nom' => 'hybride_parent_02 -> syntaxe',
'description' => "Le champ hybride_parent_02 contient soit :\n".
" - une valeur vide,\n".
" - un nombre.",
" - une valeur vide,\n".
" - un nombre.",
'resultat' => false);
// Réalisation du test
390,8 → 390,8
private function testerHybrideParent01Existence() {
$info = array('nom' => 'hybride_parent_01 -> existence',
'description' => "Si le champ hybride_parent_01 contient un nombre alors il doit correspondre à une valeur du champ ".
"num_nom.",
'description' => "Si le champ hybride_parent_01 contient un nombre alors il doit correspondre à une valeur ".
"du champ num_nom.",
'resultat' => false);
// Réalisation du test
419,8 → 419,8
private function testerHybrideParent01Syntaxe() {
$info = array('nom' => 'hybride_parent_01 -> syntaxe',
'description' => "Le champ hybride_parent_01 contient soit :\n".
" - une valeur vide,\n".
" - un nombre.",
" - une valeur vide,\n".
" - un nombre.",
'resultat' => false);
// Réalisation du test
448,7 → 448,7
private function testerSynonymeOrthographiqueExistence() {
$info = array('nom' => 'synonyme_orthographique -> existence',
'description' => "Si le champ synonyme_orthographique contient un nombre alors il doit correspondre ".
"à une valeur du champ num_nom.",
"à une valeur du champ num_nom.",
'resultat' => false);
// Réalisation du test
476,8 → 476,8
private function testerSynonymeOrthographiqueSyntaxe() {
$info = array('nom' => 'synonyme_orthographique -> syntaxe',
'description' => "Le champ synonyme_orthographique contient soit :\n".
" - une valeur vide,\n".
" - un nombre.",
" - une valeur vide,\n".
" - un nombre.",
'resultat' => false);
// Réalisation du test
589,7 → 589,7
private function testerSynonymeProparteExistence() {
$info = array('nom' => 'synonyme_proparte -> existence',
'description' => "Si le champ synonyme_proparte contient un ou plusieurs nombres alors chacun d'entre eux ".
"doit correspondre à une valeur du champ num_nom.",
"doit correspondre à une valeur du champ num_nom.",
'resultat' => false);
// Réalisation du test
654,7 → 654,7
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.",
"num_nom.",
'resultat' => false);
// Réalisation du test
711,7 → 711,7
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.",
"dans le champ nom_sci.",
'resultat' => false);
$noms_homonymie = $this->classerNomsParNomComplet();
972,7 → 972,8
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']}.",
'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
1031,7 → 1032,8
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']}.",
'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
1089,10 → 1091,10
$info = array('nom' => 'epithete_infra_sp -> syntaxe',
'description' => "Le champ epithete_infra_sp peut contenir :\n".
" - un mot unique composé de lettres minuscules, avec ou sans tréma (¨), et de tirets (-). \n".
" Il commence par une lettre minuscule (avec ou sans tréma).\n".
" Il peut être précédé par le signe + ou la lettre x suivi d'un espace.\n".
" Il commence par une lettre minuscule (avec ou sans tréma).\n".
" Il peut être précédé par le signe + ou la lettre x suivi d'un espace.\n".
" - une formule d'hybridité composée d'une série de noms d'espèce ou d'infra espèce \n".
" (au moins 2) séparés entre eux par la lettre x entourée de caractères espaces.",
" (au moins 2) séparés entre eux par la lettre x entourée de caractères espaces.",
'resultat' => false);
// Réalisation du test
1266,7 → 1268,7
}
$info['resultat'] = $ok;
if (!$ok) {
$info['message'] = 'Champs manquant : '.implode(', ', $champs_manquant).'.';
$info['message'] = 'Champs manquants : '.implode(', ', $champs_manquant).'.';
}
$this->traiterResultatTest($info);
1305,7 → 1307,7
// Analyse des résultats
if (count($champs_erreur) > 0) {
$info['message'] = "Champs n'ayant pas un bon type : ".implode(', ', $champs_erreur).'.';
$info['message'] = "Champs n'ayant pas un type conforme : ".implode(', ', $champs_erreur).'.';
} else {
$info['resultat'] = true;
}
1347,7 → 1349,8
// Analyse des résultats
if (count($champs_erreur) > 0) {
$info['message'] = "Champs possédant des enregistrements avec une taille maximum : ".implode(', ', $champs_erreur).'.';
$info['message'] = "Champs possédant des enregistrements qui atteignent la taille maximum autorisée : ".
implode(', ', $champs_erreur).'.';
} else {
$info['resultat'] = true;
}
1385,7 → 1388,8
// Analyse des résultats
if (count($noms_erreur) > 0) {
$info['message'] = count($noms_erreur)." enregistrements contiennent dans le champ num_nom une valeur inférieure ou égale à 0.";
$info['message'] = count($noms_erreur)." enregistrements contiennent dans le champ num_nom une valeur ".
"inférieure ou égale à 0.";
} else {
$info['resultat'] = true;
}
1408,7 → 1412,8
// Analyse des résultats
if (count($noms_erreur) > 0) {
$info['message'] = count($noms_erreur)." enregistrements dont le champ num_nom_retenu est inférieur ou égal à 0 : ".implode(', ', $noms_erreur).'.';
$info['message'] = count($noms_erreur)." enregistrements dont le champ num_nom_retenu est inférieur ou égal à 0 : ".
implode(', ', $noms_erreur).'.';
} else {
$info['resultat'] = true;
}
1418,7 → 1423,8
private function testerNumTaxSupEgalZeroUnique() {
$info = array('nom' => 'num_tax_sup -> égal à 0 unique',
'description' => "Un seul enregistrement doit posséder la valeur 0 dans le champ num_tax_sup. Il correspond au premier taxon de la classification.",
'description' => "Un seul enregistrement doit posséder la valeur 0 dans le champ num_tax_sup. Il correspond ".
"au premier taxon de la classification.",
'resultat' => false);
// Réalisation du test
1431,7 → 1437,8
// Analyse des résultats
if (count($noms_erreur) > 1) {
$info['message'] = count($noms_erreur)." enregistrements ont une valeur de 0 dans le champ num_tax_sup : ".implode(', ', $noms_erreur).'.';
$info['message'] = count($noms_erreur)." enregistrements ont une valeur de 0 dans le champ num_tax_sup : ".
implode(', ', $noms_erreur).'.';
} else {
$info['resultat'] = true;
}
1441,8 → 1448,8
private function testerTaxSupPourTaxon() {
$info = array('nom' => 'Classification -> uniquement pour les taxons',
'description' => "Seuls les enregistrements représentant un taxon doivent posséder une valeur dans le champ num_tax_sup.\n".
"Si num_nom_retenu est différent de num_nom (= nom synonyme) alors num_tax_sup doit être vide.",
'description' => "Seuls les enregistrements représentant un taxon doivent posséder une valeur dans le champ ".
"num_tax_sup.\n Si num_nom_retenu est différent de num_nom (= nom synonyme) alors num_tax_sup doit être vide.",
'resultat' => false);
// Réalisation du test
1455,7 → 1462,8
// Analyse des résultats
if (count($noms_erreur) > 0) {
$info['message'] = count($noms_erreur)." enregistrements qui n'est pas un taxon et qui possède une valeur dans num_tax_sup : ".implode(', ', $noms_erreur).'.';
$info['message'] = count($noms_erreur)." enregistrements ne sont pas des taxons et possèdent une ".
"valeur dans num_tax_sup : ".implode(', ', $noms_erreur).'.';
} else {
$info['resultat'] = true;
}
1465,7 → 1473,8
private function testerExitenceTaxonSuperieur() {
$info = array('nom' => 'Classification -> existence du taxon supérieur',
'description' => "Chaque enregistrement représentant un taxon doit posséder un taxon supérieur sauf la racine de la classification.",
'description' => "Chaque enregistrement représentant un taxon doit posséder un taxon supérieur sauf ".
"la racine de la classification.",
'resultat' => false);
// Réalisation du test
1480,7 → 1489,8
// Analyse des résultats
if (count($noms_erreur) > 0) {
$info['message'] = count($noms_erreur)." enregistrements dont le taxon supérieur n'existe pas : ".implode(', ', $noms_erreur).'.';
$info['message'] = count($noms_erreur)." enregistrements dont le taxon supérieur n'existe pas : ".
implode(', ', $noms_erreur).'.';
} else {
$info['resultat'] = true;
}
1490,7 → 1500,8
private function testerClassificationRang() {
$info = array('nom' => 'Classification -> taxon supérieur avec rang inférieur',
'description' => "Pour chaque enregistrement représentant un taxon, le taxon supérieur doit avoir un rang inférieur au taxon courant.",
'description' => "Pour chaque enregistrement représentant un taxon, le taxon supérieur doit avoir ".
"un rang inférieur au taxon courant.",
'resultat' => false);
// Réalisation du test
1518,7 → 1529,8
private function testerClassification() {
$info = array('nom' => 'Classification -> racine liée à chaque noeud',
'description' => "Pour chaque enregistrement, la classification doit pouvoir être remontée jusqu'à un nom unique possédant une valeur num_tax_sup de 0.",
'description' => "Pour chaque enregistrement, la classification doit pouvoir être remontée ".
"jusqu'à un nom unique possédant une valeur num_tax_sup de 0.",
'resultat' => false);
// Réalisation du test
1545,7 → 1557,8
// Analyse des résultats
if (count($noms_erreur) > 0) {
$info['message'] = count($noms_erreur)." taxons dont la classification n'est pas bonne : ".implode(', ', $noms_erreur).'.';
$info['message'] = count($noms_erreur)." taxons dont la classification n'est pas bonne : ".
implode(', ', $noms_erreur).'.';
} else {
$info['resultat'] = true;
}
1605,8 → 1618,9
private function testerNomCompletSupraGenerique() {
$info = array('nom' => 'nom_sci -> noms supra-génériques',
'description' => "Si le rang est < à {$this->manuel['rang_genre']}, le nom_sci doit correspondre à la valeur du champ nom_supra_generique. ".
"Les valeurs des champs cultivar_groupe, cultivar et nom_commercial peuvent s'y ajouter.",
'description' => "Si le rang est < à {$this->manuel['rang_genre']}, le nom_sci doit correspondre à la valeur ".
"du champ nom_supra_generique. Les valeurs des champs cultivar_groupe, cultivar et ".
"nom_commercial peuvent s'y ajouter.",
'resultat' => false);
// Réalisation du test
1897,10 → 1911,10
$info = array('nom' => 'genre -> syntaxe',
'description' => "Le champ genre peut contenir :\n".
" - un mot unique composé de lettres minuscules, avec ou sans tréma (¨), et de tirets (-). \n".
" Il commence par une lettre majuscule (avec ou sans tréma) et peut être précédé par \n".
" Il commence par une lettre majuscule (avec ou sans tréma) et peut être précédé par \n".
" le signe + ou la lettre x suivi d'un espace.\n".
" - une formule d'hybridité composée d'une série de noms de genre (au moins 2) séparés\n ".
" entre eux par la lettre x entourée de caractères espaces.",
" - une formule d'hybridité composée d'une série de noms de genre (au moins 2) séparés\n".
" entre eux par la lettre x entourée de caractères espaces.",
'resultat' => false);
// Réalisation du test
2074,12 → 2088,12
$info = array('nom' => 'epithete_sp -> syntaxe',
'description' => "Le champ epithete_sp peut contenir :\n".
" - un mot unique composé de lettres minuscules [a-z] incluant les caractères [ëï-]. \n".
" Il commence par une lettre minuscule [a-zëï].\n".
" Il peut être précédé par le signe + ou la lettre x suivi d'un espace.\n".
" Il commence par une lettre minuscule [a-zëï].\n".
" Il peut être précédé par le signe + ou la lettre x suivi d'un espace.\n".
" - un mot contenant sp. suivi d'un ou plusieurs caractères numériques (1-9) \n".
" ou d'un seul caractère majuscule (A-Z) \n".
" - une formule d'hybridité composée d'une série de noms d'espèce (au moins 2) \n".
" séparés entre eux par la lettre x entourée de caractères espaces.",
" séparés entre eux par la lettre x entourée de caractères espaces.",
'resultat' => false);
// Réalisation du test