New file |
0,0 → 1,312 |
<?php |
|
require_once dirname(__FILE__).'/../ServiceEflorePhpUnit.php'; |
|
class SyntaxonsTest extends ServiceEflorePhpUnit { |
|
public function __construct() { |
$this->projet = 'baseveg'; |
$this->service = 'syntaxons'; |
} |
|
|
//++ ------------------------------------Test des ressources -----------------------------++ |
|
//la ressource demandée est t elle connue ? |
public function testRessourceInconnue() { |
$ressourcesList = array( |
array('inconnue'), |
array('code:07-2.0.1.0.1-08'), |
array('relations'), |
array('cle:bgwsd'), |
array('cle:5','relations'), |
array('cle:5','relations','synonymie'), |
array('cle:5','relations','niveaux-sup'), |
array('catminat:catminat'), |
array('catminat:45'), |
array('catminat:07-2.0.1.0.1-08','inconnu'), |
array('catminat:07-2.0.1.0.1-08','inconnu','synonymie'), |
array('catminat:07-2.0.1.0.1-08','relations','inconnu') |
); |
$parametres = array(); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = "Erreur dans l'url de votre requête : </br> La ressource demandée n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, "Il faut indiquer si une ressource est eronnée."); |
} |
|
} |
|
|
//++ ------------------------------------Test des parametres -----------------------------++ |
|
public function testParametreinconnu() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08'), |
array('cle:10'), |
array('catminat:07-2.0.1.0.1-08','relations','niveaux-sup'), |
array(), |
array('catminat:07-2.0.1.0.1-07','relations','synonymie'), |
array('catminat:07-2.0.1.0.1-07','relations') |
); |
$parametres = array('paramatre' => 'ORD'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" paramatre \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer si le masque est erronné."); |
} |
} |
|
|
public function testMasqueNiveauErronne() { |
$ressourcesList = array( |
array(), |
array('catminat:07-2.0.1.0.1-08','relations','niveaux-sup'), |
); |
$parametres = array('masque.niveau' => 'syn'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = "Erreur : valeur inconnue pour masque.niveau. valeurs possibles : ALL|ORD|CLA|SUBCLA|SUBORD|SUBALL|ASS|SUBASS|BC|DC|GRPT"; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer si le masque est erronné."); |
} |
} |
|
public function testParametresNavigationNonAutorisesSyntaxonsCode() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08'), |
array('cle:6'), |
array('catminat:07-2.0.1.0.1-08','relations'), |
); |
$parametres = array('navigation.depart' => '0'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" navigation.depart \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer que le parametre navigation.depart est interdit pour ce sous-service."); |
} |
$parametres = array('navigation.limite' => '10'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" navigation.limite \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer que le parametre navigation.limite est interdit pour ce sous-service."); |
} |
} |
|
public function testParametresMasqueCatminatNonAutorise() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08'), |
array('cle:6'), |
array('catminat:07-2.0.1.0.1-08','relations'), |
array('catminat:07-2.0.1.0.1-08','relations','synonymie') |
); |
$parametres = array('masque.catminat' => '07-2.0.1.0.1-08'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" masque.catminat \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer que le parametre masque.catminat est interdit pour ce sous-service."); |
} |
|
} |
|
public function testParametresMasqueFixeNonAutorise() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08'), |
array('cle:6'), |
array('catminat:07-2.0.1.0.1-08','relations'), |
); |
$parametres = array('masque.fixe' => '2338'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" masque.fixe \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer que le parametre masque.fixe est interdit pour ce sous-service."); |
} |
|
} |
|
public function testParametresMasqueNiveauNonAutorise() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08'), |
array('cle:6'), |
array('catminat:07-2.0.1.0.1-08','relations'), |
array('catminat:07-2.0.1.0.1-08','relations','synonymie') |
); |
$parametres = array('masque.niveau' => 'ord'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" masque.niveau \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer que le parametre masque.niveau est interdit pour ce sous-service."); |
} |
|
} |
|
public function testParametresMasqueRetenuNonAutorise() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08'), |
array('cle:6'), |
array('catminat:07-2.0.1.0.1-08','relations'), |
array('catminat:07-2.0.1.0.1-08','relations','synonymie') |
); |
$parametres = array('masque.retenu' => 'true'); |
foreach ($ressourcesList as $ressources) { |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = "Erreur dans les parametres de votre requête :". |
" </br> Le paramètre \" masque.retenu \" n'existe pas."; |
$this->assertEquals($messageAttendu, $retour, |
"Il faut indiquer que le parametre masque.catminat est interdit pour ce sous-service."); |
} |
|
} |
|
|
|
//++ ------------------------------------Test du retour Json -----------------------------++ |
|
public function testJsonBienFormeListes() { |
$ressourcesList = array( |
array('catminat:07-2.0.1.0.1-08','relations','niveaux-sup'), |
array(), |
array('catminat:07-2.0.1.0.1-07','relations','synonymie'), |
array('catminat:07-2.0.1.0.1-07','relations') |
); |
$parametres = array(); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url"); |
$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url"); |
} |
|
} |
|
public function testPasDeResultat() { |
$ressourcesList = array( |
array('catminat:18-5.2.1.6.0-8'), |
array('catminat:18-5.2.1.6.0-8','relations') |
); |
$parametres = array(); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = "Les données recherchées sont introuvables."; |
$this->assertEquals($messageAttendu, $retour,"Il faut indiquer si les données recherchées sont introuvables"); |
} |
$ressourcesList = array( |
array('catminat:18-5.2.1.6.0-8','relations','synonymie'), |
array('catminat:18-5.2.1.6.0-8','relations','niveaux-sup'), |
); |
$parametres = array(); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterBrut($ressources, $parametres); |
$messageAttendu = "\"Les donn\u00e9es recherch\u00e9es sont introuvables\""; |
$this->assertEquals($messageAttendu, $retour,"Il faut indiquer si les données recherchées sont introuvables"); |
} |
|
} |
|
public function testChampsNiveau() { |
$ressources = array(); |
$parametres = array('masque.retenu' => 'true'); |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertArrayHasKey('niveau.code', $valeurs, "Le json ne contient pas d'attribut : niveau.code . Voir : $url"); |
$this->assertNotEmpty($valeurs['niveau.code']); |
$this->assertArrayHasKey('niveau.libelle', $valeurs, "Le json ne contient pas d'attribut : niveau.libelle . Voir : $url"); |
$this->assertNotEmpty($valeurs['niveau.libelle']); |
$this->assertArrayHasKey('niveau.href', $valeurs, "Le json ne contient pas d'attribut : niveau.href . Voir : $url"); |
$this->assertNotEmpty($valeurs['niveau.href']); |
} |
|
$parametres = array('masque.retenu' => 'false'); |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertArrayHasKey('niveau.code', $valeurs, "Le json ne contient pas d'attribut : niveau.code . Voir : $url"); |
$this->assertNotEmpty($valeurs['niveau.code']); |
$this->assertArrayHasKey('niveau.libelle', $valeurs, "Le json ne contient pas d'attribut : niveau.libelle . Voir : $url"); |
$this->assertNotEmpty($valeurs['niveau.libelle']); |
$this->assertArrayHasKey('niveau.detail', $valeurs, "Le json ne contient pas d'attribut : niveau.detail . Voir : $url"); |
$this->assertNotEmpty($valeurs['niveau.detail']); |
} |
} |
|
public function testMasqueNiveau() { |
$ressourcesList = array( |
array(), |
array('catminat:07-2.0.1.0.1-08','relations','niveaux-sup'), |
); |
$parametres = array('masque.niveau' => 'ORD'); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertEquals( $valeurs['niveau.code'], 'ORD','le masque.niveau ne fonctionne pas.'); |
} |
} |
} |
|
public function testMasqueRetenu() { |
$ressourcesList = array(); |
$parametres = array('masque.retenu' => 'true'); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertStringStartsNotWith('syn',$valeurs['niveau.code'],'le masque.retenu ne fonctionne pas pour true.'); |
} |
} |
$parametres = array('masque.retenu' => 'false'); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertStringStartsWith('syn',$valeurs['niveau.code'],'le masque.retenu ne fonctionne pas pour false.'); |
} |
|
} |
} |
|
public function testMasqueCatminat() { |
$ressourcesList = array( |
array(), |
array('catminat:07-2.0.1.0.1-08','relations','niveaux-sup'), |
); |
$parametres = array('masque.catminat' => '07-2.'); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertEquals( $valeurs['code_catminat'], '07/2.','le masque.niveau ne fonctionne pas.'); |
} |
} |
} |
|
public function testMasqueFixe() { |
$ressourcesList = array( |
array(), |
array('catminat:07-2.0.1.0.1-08','relations','niveaux-sup'), |
); |
$parametres = array('masque.fixe' => '2322'); |
foreach ($ressourcesList as $ressources) { |
$url = $this->creerUrl($ressources, $parametres); |
$retour = $this->consulterJson($ressources, $parametres); |
foreach ($retour['resultat'] as $cle => $valeurs) { |
$this->assertEquals( $valeurs['code_fixe_nom'], '2322','le masque.fixe ne fonctionne pas.'); |
} |
} |
} |
} |
?> |