Subversion Repositories eFlore/Applications.eflore-consultation

Rev

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

Rev Author Line No. Line
145 jpm 1
<?php
158 jpm 2
include_once dirname(__FILE__).'/../ResultatFormateurInitialisation.php';
145 jpm 3
 
158 jpm 4
class RetenuFormateurTest extends ResultatFormateurInitialisation {
145 jpm 5
 
6
	public function testerFormater() {
7
		$RetenuFormateur = $this->initialiserRetenuFormateur();
8
 
9
		$RetenuFormateur->formater();
10
		$infos = $RetenuFormateur->getTplInfos();
11
 
12
		$this->assertArrayHasKey('noms', $infos, print_r($infos, true));
13
		foreach ($infos['noms'] as $id => $nom) {
14
			$this->assertTrue(is_int($id), "L'id '$id' doit être un nombre entier.");
15
			$this->assertCount(3, $nom);
16
			$this->assertArrayHasKey('nomSci', $infos['noms'][$id], print_r($infos, true));
17
			$this->assertArrayHasKey('retenu', $infos['noms'][$id], print_r($infos, true));
18
			$this->assertArrayHasKey('urlFiche', $infos['noms'][$id], print_r($infos, true));
19
			$urlFicheAttendue = sprintf(self::TPL_URL_FICHE, $id);
20
			$this->assertEquals($urlFicheAttendue, $infos['noms'][$id]['urlFiche'], print_r($infos, true));
21
		}
22
	}
23
 
24
	public function testerTrier() {
25
		$RetenuFormateur = $this->initialiserRetenuFormateur();
26
 
27
		$RetenuFormateur->formater();
28
		$RetenuFormateur->trier();
29
		$infos = $RetenuFormateur->getTplInfos();
30
 
31
		$this->assertArrayHasKey('noms', $infos, print_r($infos, true));
32
		$ordreClesAttendu = array(72288, 72291, 72289, 72290, 72341);
33
		$ordreClesTriees = array_keys($infos['noms']);
34
		$this->assertEquals($ordreClesAttendu, $ordreClesTriees, print_r($infos, true));
35
	}
36
 
37
	public function testerSurligner() {
38
		$RetenuFormateur = $this->initialiserRetenuFormateur();
39
 
40
		$RetenuFormateur->formater();
41
		$RetenuFormateur->surligner();
42
		$infos = $RetenuFormateur->getTplInfos();
43
 
44
		$this->assertArrayHasKey('noms', $infos, print_r($infos, true));
45
		foreach ($infos['noms'] as $id => $nom) {
46
			$this->assertArrayHasKey($id, $infos['noms'], print_r($infos, true));
47
			$this->assertArrayHasKey('nomSci', $infos['noms'][$id], print_r($infos, true));
1063 raphael 48
			// fails because:
49
			// svndiff -c 872 modules/resultat/formateurs/nom_scientifique/RetenuFormateur.php
50
			// 'nom_sci' => 'nom_sci_complet'
51
			// c'est à dire que les résultats passés au new RetenuFormateur() ci-dessous [= le fichier json],
52
			// doivent disposer du nom_sci_complet afin d'être formattés
145 jpm 53
			$this->assertContains('<span class="surlignage">Viola</span>', $infos['noms'][$id]['nomSci'], print_r($infos, true));
54
			$this->assertContains('<span class="surlignage">his</span>', $infos['noms'][$id]['nomSci'], print_r($infos, true));
55
		}
56
	}
57
 
58
	private function initialiserRetenuFormateur($masque = 'viola his') {
59
		$parametres = $this->getParametres('retenu', $masque);
60
		$resultats = $this->getResultatsPourMasque($masque);
61
		$surligneur = $this->getSurligneur();
62
		$trieur = $this->getTrieur();
63
		$appsUrls = $this->getAppUrls();
64
		return new RetenuFormateur($parametres, $resultats, $surligneur, $trieur, $appsUrls);
65
	}
66
}
67
?>