New file |
0,0 → 1,107 |
<?php |
include_once dirname(__FILE__).'/../ResultatFormateurInitialisation.php'; |
|
class DeterminationFormateurTest extends ResultatFormateurInitialisation { |
|
public function testerFormater() { |
$Formateur = $this->initialiserDeterminationFormateur(); |
|
$Formateur->formater(); |
$infos = $Formateur->getTplInfos(); |
|
$this->assertArrayHasKey('noms', $infos, print_r($infos, true)); |
foreach ($infos['noms'] as $id => $nom) { |
$this->assertTrue(is_int($id), "L'id '$id' doit être un nombre entier."); |
$this->assertCount(2, $nom, "Le nom doit avoir 2 paramètres : nomSciRetenu et UrlFiche"); |
$this->assertArrayHasKey('nomSciRetenu', $infos['noms'][$id], print_r($infos, true)); |
$this->assertArrayHasKey('urlFiche', $infos['noms'][$id], print_r($infos, true)); |
$urlFicheAttendue = sprintf(ConsultationEflorePhpUnit::TPL_URL_FICHE, $id); |
$this->assertEquals($urlFicheAttendue, $infos['noms'][$id]['urlFiche'], print_r($infos, true)); |
} |
|
$this->assertArrayHasKey('synonymes', $infos, print_r($infos, true)); |
foreach ($infos['synonymes'] as $idNomRetenu => $synonymes) { |
foreach ($synonymes as $idSynonyme => $synonyme) { |
$this->assertCount(3, $synonyme, print_r($infos, true)); |
$this->assertArrayHasKey('nn', $synonyme, print_r($infos, true)); |
$this->assertTrue(is_int($synonyme['nn']), "La valeur nn (num_nom) '{$synonyme['nn']}' doit être un nombre entier."); |
$this->assertArrayHasKey('nomSci', $synonyme, print_r($infos, true)); |
$this->assertArrayHasKey('urlFiche', $synonyme, print_r($infos, true)); |
$urlSynoAttendue = sprintf(ConsultationEflorePhpUnit::TPL_URL_FICHE, $synonyme['nn']); |
$this->assertEquals($urlSynoAttendue, $synonyme['urlFiche'], print_r($infos, true)); |
} |
} |
|
$this->assertArrayHasKey('nomsSansCorrespondance', $infos, print_r($infos, true)); |
$this->assertEmpty($infos['nomsSansCorrespondance']); |
|
$this->assertArrayHasKey('imagesUrls', $infos, print_r($infos, true)); |
$this->assertTrue(is_array($infos['imagesUrls']), "'imagesUrls' doit être un tableau"); |
$this->assertArrayHasKey('72117', $infos['imagesUrls'], print_r($infos, true)); |
$this->assertArrayHasKey('72288', $infos['imagesUrls'], print_r($infos, true)); |
foreach ($infos['imagesUrls'] as $imgUrl) { |
$this->assertTrue(is_array($imgUrl), "Chaque taxon doit avoir un tableau d'url d'images"); |
foreach ($imgUrl as $url) { |
$this->assertRegExp('/^http:\/\/www\.tela-botanica\.org\/appli:cel-img:[0-9]{9}CS\.jpg$/', $url); |
} |
} |
} |
|
public function testerTrier() { |
$Formateur = $this->initialiserDeterminationFormateur(); |
|
$Formateur->formater(); |
$Formateur->trier(); |
$infos = $Formateur->getTplInfos(); |
|
$this->assertArrayHasKey('noms', $infos, print_r($infos, true)); |
$ordreClesAttendu = array(72288, 72201, 72117); |
$ordreClesTriees = array_keys($infos['noms']); |
$this->assertEquals($ordreClesAttendu, $ordreClesTriees, print_r($ordreClesTriees, true)); |
} |
|
public function testerSurligner() { |
$Formateur = $this->initialiserDeterminationFormateur(); |
|
$Formateur->formater(); |
$Formateur->surligner(); |
$infos = $Formateur->getTplInfos(); |
|
$this->assertArrayHasKey('noms', $infos, print_r($infos, true)); |
foreach ($infos['noms'] as $id => $nom) { |
$this->assertArrayHasKey($id, $infos['noms'], print_r($infos, true)); |
$this->assertArrayHasKey('nomSciRetenu', $infos['noms'][$id], print_r($infos, true)); |
$this->assertContains('<span class="surlignage">Viola</span>', $infos['noms'][$id]['nomSciRetenu'], print_r($infos, true)); |
|
} |
} |
|
private function initialiserDeterminationFormateur($masque = 'viola his') { |
$parametres = $this->getParametres('determination', $masque); |
$resultats = $this->getResultatsPourMasque($masque); |
$surligneur = $this->getSurligneur(); |
$trieur = $this->getTrieur(); |
$appsUrls = $this->getAppUrls(); |
$images = $this->getImagesService(); |
return new DeterminationFormateur($parametres, $resultats, $surligneur, $trieur, $appsUrls, null, $images); |
} |
|
private function getImagesService() { |
$retour = array( |
'bdtfx.72117' => array( |
'http://www.tela-botanica.org/appli:cel-img:000025491CS.jpg', |
'http://www.tela-botanica.org/appli:cel-img:000025514CS.jpg', |
'http://www.tela-botanica.org/appli:cel-img:000025520CS.jpg'), |
'bdtfx.72288' => array( |
'http://www.tela-botanica.org/appli:cel-img:000032710CS.jpg', |
'http://www.tela-botanica.org/appli:cel-img:000032711CS.jpg', |
'http://www.tela-botanica.org/appli:cel-img:000032712CS.jpg')); |
|
$Images = $this->getMock('Images', array('getUrlsImagesParIdsNoms'), array(), '', false); |
$Images->expects($this->any()) |
->method('getUrlsImagesParIdsNoms') |
->will($this->returnValue($retour)); |
return $Images; |
} |
} |
?> |