Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 844 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<?php
require_once dirname(__FILE__).'/../ServicePhpUnit.php';

class NomDetailsFournierTest extends ServicePhpUnit {

        private $nomDetailSqueletteUrl = 'http://localhost/service:eflore:0.2/fournier/noms/%s';
        private $ontologieHrefTpl = 'http://localhost/service:eflore:0.2/bdnt/ontologies/rangTaxo:%s';
        private $champsProjet = array(
                'nom_scientifique' => 'nom_scientifique',
                'auteur_origine' => 'auteur_origine',
                'nom_vernaculaire' => 'nom_vernaculaire',
                'page' => 'page',
                'code_taxon' => 'code_taxon',
                'milieu' => 'milieu',
                'floraison' => 'floraison',
                'type' => 'type',
                'sol' => 'sol',
                'rarete_region_alt' => 'rarete_region_alt',
                'region_bota_monde' => 'region_bota_monde',
                'etymologie' => 'etymologie',
                'taille' => 'taille',
                'formule_hybridite' => 'formule_hybridite',
                'culture' => 'culture');

        public function __construct() {
                $this->projet = 'fournier';
                $this->service = 'noms';
        }

                public function testSansParametres() {
                $ressources = array('85');
                $parametres = array();

                $retour = $this->consulter($ressources, $parametres);

                $this->assertTrue(is_array($retour), 'Retour est un tableau');
                $this->assertArrayHasKey('id', $retour, 'Présence champ id');
                $this->assertSame(85, $retour['id'], 'Valeur champ id = 85');
                $this->assertArrayHasKey('nom_sci', $retour, 'Présence champ nom_sci');
                $this->assertSame('Hymenophyllum peltatum', $retour['nom_sci'], 'Valeur champ nom_sci = Hymenophyllum peltatum');
                $this->assertArrayHasKey('nom_retenu.id', $retour, 'Présence champ nom_retenu.id');
                $this->assertSame(84, $retour['nom_retenu.id'], 'Valeur champ nom_sci = 84');
                $this->assertArrayHasKey('nom_retenu', $retour, 'Présence champ nom_retenu');
                $this->assertSame('Hymenophyllum unilaterale', $retour['nom_retenu'], 'Valeur champ nom_retenu = Hymenophyllum unilaterale');
                $this->assertArrayHasKey('nom_retenu.href', $retour, 'Présence champ nom_retenu.href');
                $urlNomRetenuHrefAttendue = sprintf($this->nomDetailSqueletteUrl, 84);
                $this->assertSame($urlNomRetenuHrefAttendue, $retour['nom_retenu.href'], "Valeur champ nom_retenu.href = $urlNomRetenuHrefAttendue");

                $this->assertArrayHasKey('rang.code', $retour, 'Présence champ rang.code');
                $this->assertSame('bdnt.rangTaxo:290', $retour['rang.code'], 'Valeur champ rang.code = bdnt.rangTaxo:290');
                $this->assertArrayHasKey('rang', $retour, 'Présence champ rang');
                $this->assertSame('Espèce', $retour['rang'], 'Valeur champ rang = Espèce');

                $this->assertArrayHasKey('rang.href', $retour, 'Présence champ rang.href');
                $hrefAttendue =sprintf($this->ontologieHrefTpl, 290);
                $this->assertSame($hrefAttendue, $retour['rang.href'], "Valeur champ rang.href = $hrefAttendue");

        }

}
?>