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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = "Erreur dans l'url de votre requête :
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $ressources, $parametres); $messageAttendu = "Erreur dans les parametres de votre requête :". "
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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = ServiceEflorePhpUnit::consulterBrut($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $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 = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres); $retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres); foreach ($retour['resultat'] as $cle => $valeurs) { $this->assertEquals( $valeurs['code_fixe_nom'], '2322','le masque.fixe ne fonctionne pas.'); } } } } ?>