Subversion Repositories eFlore/Projets.eflore-projets

Compare Revisions

Ignore whitespace Rev 125 → Rev 126

/trunk/services/tests/cel/CelImagesTest.php
7,47 → 7,47
$this->projet = 'cel';
$this->service = 'images';
}
 
public function testMasqueNonRenseigne() {
$ressources = array();
$parametres = array('retour'=>'image/jpeg','retour.format'=>'X53L');
$parametres = array('retour'=>'image/jpeg', 'retour.format'=>'M');
 
$retour = $this->consulterBrut($ressources, $parametres);
$this->assertEquals('Le paramètre masque.nn est obligatoire ',$retour,
'Le service doit renvoyer un message d\'erreur 501 sur un masque non renseigné');
$messageAttendu = "Le paramètre masque.nn est obligatoire.";
$this->assertEquals($messageAttendu, $retour,
"Le service doit renvoyer un message pour un masque non renseigné");
}
 
public function testRetourFormatInexistant() {
$ressources = array();
$parametres = array('masque.nn' => '62018','retour'=>'image/jpeg','retour.format'=>'X53L');
$parametres = array('masque.nn' => '62018', 'retour'=>'image/jpeg', 'retour.format'=>'X53L');
 
$retour = $this->consulterBrut($ressources, $parametres);
$this->assertEquals('Le type de format X53L n\'est pas supporté ',$retour,
'Le service doit renvoyer un message d\'erreur 501 sur un format de retour inexistant');
$messageAttendu = "Le paramètre masque.nn est obligatoire.";
$this->assertEquals("Le type de format 'X53L' n'est pas supporté", $retour,
'Le service doit renvoyer un message pour un format de retour inexistant');
}
 
public function testRetourMasqueNumNomInexistant() {
$ressources = array();
$parametres = array('masque.nn' => '6218','retour'=>'image/jpeg','retour.format'=>'X53L');
$parametres = array('masque.nn' => '6218','retour'=>'image/jpeg');
$url = $this->creerUrl($ressources, $parametres);
 
$retour = $this->consulterBrut($ressources, $parametres);
$this->assertEquals('404',$retour,
'Le service doit renvoyer un message d\'erreur 404 sur un taxon ne possédant pas d\'images');
$messageAttendu = "Aucune image ne correspond au numéro numenclatural :'6218'";
$this->assertEquals($messageAttendu, $retour,
"Le service doit renvoyer un message pour un taxon ne possédant pas d'images");
}
 
public function testRetourMimeInexistant() {
$ressources = array();
$parametres = array('masque.nn' => '6218','retour'=>'image/jpog','retour.format'=>'X53L');
$parametres = array('masque.nn' => '6218','retour'=>'image/jpog');
$url = $this->creerUrl($ressources, $parametres);
 
$retour = $this->consulterBrut($ressources, $parametres);
$this->assertEquals('Le type de retour image/jpog n\'est pas supporté ',$retour,
'Le service doit renvoyer un message d\'erreur 400 sur une type de retour incorrect');
$messageAttendu = "Le type de retour 'image/jpog' n'est pas supporté";
$this->assertEquals($messageAttendu, $retour,
"Le service doit renvoyer un message d'erreur 400 sur une type de retour incorrect");
}
}
?>
/trunk/services/modules/0.1/cel/Images.php
128,20 → 128,17
 
//TODO: modifier la requete lors du passage à la nouvelle base de données pour faire quelque chose
// du numéro nomenclatural + modifier les champs appelés pour le nouveau format
$requete = 'SELECT cim.ci_id_image as id_image '.
$requete = 'SELECT coi.coi_ce_image AS id_image '.
'FROM cel_obs_images AS coi '.
'LEFT JOIN cel_inventory AS ci '.
'ON (coi.coi_ce_observation = ci.ordre AND coi.coi_ce_utilisateur = ci.identifiant) '.
'LEFT JOIN cel_images AS cim '.
'ON (coi.coi_ce_image = cim.ci_id_image AND coi.coi_ce_utilisateur = cim.ci_ce_utilisateur) '.
' LEFT JOIN cel_inventory AS ci '.
'ON (coi.coi_ce_observation = ci.ordre AND coi.coi_ce_utilisateur = ci.identifiant) '.
'WHERE ci.transmission = 1 '.
" AND num_nom_ret IN ($numNom)".
' AND ci.identifiant = cim.ci_ce_utilisateur ';
" AND ci.num_nom_ret IN ($numNom) ";
 
$resultat = $this->Bdd->recupererTous($requete);
 
if (!is_array($resultat) || count($resultat) <= 0) {
$message = "Aucune image ne correspond au numéro numenclatural $refTax:$numNom\n";
$message = "Aucune image ne correspond au numéro numenclatural $refTax:$numNom";
$code = RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE;
throw new Exception($message, $code);
}