Subversion Repositories eFlore/Projets.eflore-projets

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
520 mathilde 1
<?php
2
 
3
require_once dirname(__FILE__).'/../ServiceEflorePhpUnit.php';
4
 
5
class OntologiesBaseflorTest extends ServiceEflorePhpUnit {
6
 
7
	public function __construct() {
8
		$this->projet = 'baseflor';
9
		$this->service = 'ontologies';
10
	}
11
 
12
	public function testRecherche() {
13
		$ressources = array();
14
		$parametres = array("navigation.depart" => 20, "navigation.limite" => 100);
15
		$url = $this->creerUrl($ressources, $parametres);
16
		$retour = $this->consulterJson($ressources, $parametres);
17
		$this->assertNotEmpty($retour, 'données absentes');
18
		//limite
19
		$this->assertArrayHasKey('limite', $retour['entete'],
20
							"L'en-tête ne contient pas d'attribut : limite");
21
		$this->assertEquals($retour['entete']['limite'], $parametres['navigation.limite'],
22
							"La valeur de limite est incorrecte dans l'en-tête.");
23
		//total
24
		$this->assertArrayHasKey('total', $retour['entete'],
25
							"L'en-tête ne contient pas d'attribut : total ");
26
		$this->assertEquals('156', $retour['entete']['total'],
27
							"L'attribut 'total' devrait avoir la valeur '156. Voir : $url");
28
		//href
29
		$this->assertArrayHasKey('href.suivant', $retour['entete'],
30
							"L'en-tête ne contient pas d'attribut : href.suivant ");
31
		$this->assertArrayHasKey('href.precedent', $retour['entete'],
32
									"L'en-tête ne contient pas d'attribut : href.precedent ");
33
		$parametres_url =
34
		array('navigation.depart' => ($retour['entete']['limite']+$retour['entete']['depart']),
35
								 'navigation.limite' => $retour['entete']['limite'] );
36
		$urlsuivant = $this->creerUrl($ressources, $parametres_url);
37
		$this->assertEquals($urlsuivant, $retour['entete']['href.suivant'],
38
														"L' url $urlsuivant de l'entete est incorrecte.");
39
	}
40
 
41
 
42
 
43
}
44
?>