Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 784 | Rev 897 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 784 Rev 790
1
<?php
1
<?php
2
require_once dirname(__FILE__).'/../ServiceEflorePhpUnit.php';
2
require_once dirname(__FILE__).'/../ServiceEflorePhpUnit.php';
3
 
3
 
4
class ChorodepObservationsTest extends ServiceEflorePhpUnit {
4
class ChorodepObservationsTest extends ServiceEflorePhpUnit {
5
 
5
 
6
	public function __construct() {
6
	public function __construct() {
7
		$this->projet = 'chorodep';
7
		$this->projet = 'chorodep';
8
		$this->service = 'observations';
8
		$this->service = 'observations';
9
	}
9
	}
10
 
10
 
11
	public function testRecherche() {
11
	public function testRecherche() {
12
		$ressources = array();
12
		$ressources = array();
13
		$parametres = array();
13
		$parametres = array();
14
		$url = $this->creerUrl($ressources, $parametres);
14
		$url = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres);
15
		$retour = $this->consulterJson($ressources, $parametres);
15
		$retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres);
16
		$this->assertNotEmpty($retour, print_r($retour, true));
16
		$this->assertNotEmpty($retour, print_r($retour, true));
17
		$this->assertNotEmpty($retour['entete'], print_r($retour['entete'], true));
17
		$this->assertNotEmpty($retour['entete'], print_r($retour['entete'], true));
18
		$this->assertEquals(20, $retour['entete']['total'], "L'attribut 'total' devrait avoir la valeur '20'. Voir : $url");
18
		$this->assertEquals(20, $retour['entete']['total'], "L'attribut 'total' devrait avoir la valeur '20'. Voir : $url");
19
		$this->assertEquals(20, count($retour['resultat']), "Il devrait y avoir '20' résultats. Voir : $url");
19
		$this->assertEquals(20, count($retour['resultat']), "Il devrait y avoir '20' résultats. Voir : $url");
20
	}
20
	}
21
 
21
 
22
 
22
 
23
	public function testObservation() {
23
	public function testObservation() {
24
		$ressources = array("10:20");
24
		$ressources = array("10:20");
25
		$parametres = array();
25
		$parametres = array();
26
		$url = $this->creerUrl($ressources, $parametres);
26
		$url = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres);
27
		$retour = $this->consulterJson($ressources, $parametres);
27
		$retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres);
28
		$this->assertNotEmpty($retour, print_r($retour, true));
28
		$this->assertNotEmpty($retour, print_r($retour, true));
29
		$this->assertArrayHasKey('type', $retour, "Le json ne contient pas d'attribut : type. Voir : $url");
29
		$this->assertArrayHasKey('type', $retour, "Le json ne contient pas d'attribut : type. Voir : $url");
30
		$this->assertEquals('chorologie', $retour['type'], "L'attribut 'type' devrait avoir la valeur 'chorologie'. Voir : $url");
30
		$this->assertEquals('chorologie', $retour['type'], "L'attribut 'type' devrait avoir la valeur 'chorologie'. Voir : $url");
31
	}
31
	}
32
 
32
 
33
	public function testMasqueStation() {
33
	public function testMasqueStation() {
34
		$ressources = array();
34
		$ressources = array();
35
		$parametres = array('masque.station' => '34', 'retour.format' => 'min');
35
		$parametres = array('masque.station' => '34', 'retour.format' => 'min');
36
		$url = $this->creerUrl($ressources, $parametres);
36
		$url = ServiceEflorePhpUnit::creerUrl($this->service, $ressources, $parametres);
37
		$retour = $this->consulterJson($ressources, $parametres);
37
		$retour = $this->consulterJson($this->service, $this->projet, $ressources, $parametres);
38
		$this->assertNotEmpty($retour, 'pas de resultat'.print_r($retour, true));
38
		$this->assertNotEmpty($retour, 'pas de resultat'.print_r($retour, true));
39
		$this->assertNotEmpty($retour['entete'], 'pas d\'entete'.print_r($retour['entete'], true));
39
		$this->assertNotEmpty($retour['entete'], 'pas d\'entete'.print_r($retour['entete'], true));
40
		$this->assertEquals(20, $retour['entete']['total'], "L'attribut 'total' devrait avoir la valeur '20'. Voir : $url");
40
		$this->assertEquals(20, $retour['entete']['total'], "L'attribut 'total' devrait avoir la valeur '20'. Voir : $url");
41
		$this->assertEquals(20, count($retour['resultat']), "L'attribut 'total' devrait avoir la valeur '20'. Voir : $url");
41
		$this->assertEquals(20, count($retour['resultat']), "L'attribut 'total' devrait avoir la valeur '20'. Voir : $url");
42
		$this->assertNotEmpty($retour['resultat']['197:34'], 'resultat 197:34 absent'.print_r($retour['resultat']['74929:03'], true));
42
		$this->assertNotEmpty($retour['resultat']['197:34'], 'resultat 197:34 absent'.print_r($retour['resultat']['74929:03'], true));
43
		/*$this->assertArrayHasKey('type', $retour['resultat']['74929:03'], "Le json ne contient pas d'attribut : type. Voir : $url");
43
		/*$this->assertArrayHasKey('type', $retour['resultat']['74929:03'], "Le json ne contient pas d'attribut : type. Voir : $url");
44
		  $this->assertEquals('chorologie', $retour['resultat']['74929:03']['type'], "L'attribut 'type' devrait avoir la valeur 'chorologie'. Voir : $url");*/
44
		  $this->assertEquals('chorologie', $retour['resultat']['74929:03']['type'], "L'attribut 'type' devrait avoir la valeur 'chorologie'. Voir : $url");*/
45
		// TODO: implémenter "chorodep/observations/10:25?masque.station=34&retour.format=min"
45
		// TODO: implémenter "chorodep/observations/10:25?masque.station=34&retour.format=min"
46
	}
46
	}
47
}
47
}
48
?>
48
?>