Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 520 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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