New file |
0,0 → 1,81 |
<?php |
require_once dirname(__FILE__).'/../ServicePhpUnit.php'; |
|
class NomDetailsBdtfxTest extends ServicePhpUnit { |
|
private $nomDetailSqueletteUrl = 'http://localhost/service:eflore:0.2/bdtfx/noms/%s'; |
private $ontologieHrefTpl = 'http://localhost/service:eflore:0.2/bdnt/ontologies/rangTaxo:%s'; |
private $champsProjet = array( |
'presence_Ga' => 'presence_Ga.code', |
'presence_Co' => 'presence_Co.code' |
); |
|
public function __construct() { |
$this->projet = 'bdtfx'; |
$this->service = 'noms'; |
$this->classeTestee = 'NomDetailsGenerique'; |
} |
|
public function initialiserService(NomsListe $service) { |
$service->setDetailsHrefTpl($this->nomDetailSqueletteUrl); |
$service->setOntologieHrefTpl($this->ontologieHrefTpl); |
$service->setChampsProjet($this->champsProjet); |
} |
|
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('Abutilon theophrasti', $retour['nom_sci'], 'Valeur champ nom_sci = Abutilon theophrasti'); |
$this->assertArrayHasKey('nom_retenu.id', $retour, 'Présence champ nom_retenu.id'); |
$this->assertSame(85, $retour['nom_retenu.id'], 'Valeur champ nom_sci = 85'); |
$this->assertArrayHasKey('nom_retenu', $retour, 'Présence champ nom_retenu'); |
$this->assertSame('Abutilon theophrasti', $retour['nom_retenu'], 'Valeur champ nom_retenu = Abutilon theophrasti'); |
$this->assertArrayHasKey('nom_retenu.href', $retour, 'Présence champ nom_retenu.href'); |
$urlNomRetenuHrefAttendue = sprintf($this->nomDetailSqueletteUrl, 85); |
$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"); |
|
$this->assertArrayHasKey('nom_sci.genre', $retour, 'Présence champ nom_sci.genre'); |
$this->assertSame('Abutilon', $retour['nom_sci.genre'], "Valeur champ nom_sci.genre = 'Abutilon'"); |
$this->assertArrayHasKey('nom_sci.sp', $retour, 'Présence champ nom_sci.sp'); |
$this->assertSame('theophrasti', $retour['nom_sci.sp'], "Valeur champ nom_sci.sp = theophrasti"); |
|
$this->assertArrayHasKey('auteur', $retour, 'Présence champ auteur'); |
$this->assertSame('Medik.', $retour['auteur'], "Valeur champ auteur = 'Medik.'"); |
|
$this->assertArrayHasKey('presence_Ga.code', $retour, 'Présence champ presence_Ga.code'.print_r($retour,true)); |
$this->assertSame('P', $retour['presence_Ga.code'], "Valeur champ presence_Ga.code = 'P'"); |
$this->assertArrayHasKey('presence_Co.code', $retour, 'Présence champ "presence_Co.code'); |
$this->assertSame('P', $retour['presence_Co.code'], "Valeur champ page = P"); |
} |
|
public function testNomSansCorrespondance() { |
$ressources = array('98940'); |
$parametres = array(); |
|
$retour = $this->consulter($ressources, $parametres); |
|
$this->assertArrayNotHasKey('nom_retenu.id', $retour, 'Abscence champ nom_retenu.id'); |
$this->assertArrayHasKey('nom_retenu', $retour, 'Présence champ nom_retenu'); |
$this->assertSame(null, $retour['nom_retenu'], 'Valeur champ nom_retenu = null'); |
$this->assertArrayNotHasKey('nom_retenu.href', $retour, 'Abscence champ nom_retenu.href'); |
} |
|
} |
?> |