Subversion Repositories eFlore/Projets.eflore-projets

Compare Revisions

Ignore whitespace Rev 16 → Rev 17

/trunk/services/tests/bdtfx/BdtfxNomsTest.php
1,6 → 1,11
<?php
class BdtfxNomsTest extends PHPUnit_Framework_TestCase {
class BdtfxNomsTest extends ServicesTestsOutils {
 
public function __construct() {
$this->projet = 'bdtfx';
$this->service = 'noms';
}
 
public function testVersionPrecise() {
$ressources = array('v1.01');
$parametres = array();
195,45 → 200,5
$message = "Le tableau du résultat 182 doit contenir un champ 'nom_sci' avec pour valeur '$attendu'. Voir : $url";
$this->assertEquals($attendu, $retour['resultat']['182']['nom_sci'], $message);
}
 
//+------------------------------------------------------------------------------------------------------+
// Refactorisation
private function consulterJson($ressources, $parametres) {
$retourJson = $this->consulterBrut($ressources, $parametres);
$retour = json_decode($retourJson, true);
$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
return $retour;
}
 
private function consulterBrut($ressources, $parametres) {
array_unshift($ressources, 'noms');
array_unshift($ressources, 'bdtfx');
$projets = new Projets();
$retourJson = $projets->consulter($ressources, $parametres);
return $retourJson;
}
 
private function creerUrl($ressources, $parametres) {
$version = '';
$ressourcesUrl = array();
foreach ($ressources as $ressource) {
if (preg_match('/^(v[0-9]+\.[0-9]+|[*+])$/', $ressource)) {
$version = $ressource.'/';
} else {
$ressourcesUrl[] = $ressource;
}
}
$ressourcesUrl = count($ressourcesUrl) > 0 ? '/'.implode('/', $ressourcesUrl) : '';
 
$parametresUrl = '';
if (count($parametres) > 0) {
foreach ($parametres as $cle => $valeur) {
$parametresUrl[] = $cle.'='.rawurlencode($valeur);
}
$parametresUrl = '?'.implode('&', $parametresUrl);
}
$url = Config::get('url_service').'/'.$version.'noms'.$ressourcesUrl.$parametresUrl;
return $url;
}
}
?>
/trunk/services/tests/bdtfx/BdtfxTaxonsTest.php
1,6 → 1,11
<?php
class BdtfxTaxonsTest extends PHPUnit_Framework_TestCase {
class BdtfxTaxonsTest extends ServicesTestsOutils {
 
public function __construct() {
$this->projet = 'bdtfx';
$this->service = 'taxons';
}
 
public function testVersionPrecise() {
$ressources = array('v1.01');
$parametres = array();
90,45 → 95,5
$this->assertEquals('4', $retour['entete']['total'], "L'attribut total de l'entête devrait valoir 4. Voir : $url");
$this->assertEquals(4, count($retour['resultat']), "Le résultat devrait contenir 4 données. Voir : $url");
}
 
//+------------------------------------------------------------------------------------------------------+
// Refactorisation
private function consulterJson($ressources, $parametres) {
$retourJson = $this->consulterBrut($ressources, $parametres);
$retour = json_decode($retourJson, true);
$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
return $retour;
}
 
private function consulterBrut($ressources, $parametres) {
array_unshift($ressources, 'taxons');
array_unshift($ressources, 'bdtfx');
$projets = new Projets();
$retourJson = $projets->consulter($ressources, $parametres);
return $retourJson;
}
 
private function creerUrl($ressources, $parametres) {
$version = '';
$ressourcesUrl = array();
foreach ($ressources as $ressource) {
if (preg_match('/^(v[0-9]+\.[0-9]+|[*+])$/', $ressource)) {
$version = $ressource.'/';
} else {
$ressourcesUrl[] = $ressource;
}
}
$ressourcesUrl = count($ressourcesUrl) > 0 ? '/'.implode('/', $ressourcesUrl) : '';
 
$parametresUrl = '';
if (count($parametres) > 0) {
foreach ($parametres as $cle => $valeur) {
$parametresUrl[] = $cle.'='.rawurlencode($valeur);
}
$parametresUrl = '?'.implode('&', $parametresUrl);
}
$url = Config::get('url_service').'/'.$version.'noms'.$ressourcesUrl.$parametresUrl;
return $url;
}
}
?>