Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 3 | Rev 17 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3 Rev 7
Line 58... Line 58...
58
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
58
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
59
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url");
59
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url");
60
		$this->assertEquals('1', $retour['entete']['total'], "L'attribut 'total' de l'entête devrait valoir 1. Voir : $url");
60
		$this->assertEquals('1', $retour['entete']['total'], "L'attribut 'total' de l'entête devrait valoir 1. Voir : $url");
61
		$this->assertEquals(1, count($retour['resultat']), "Le résultat devrait contenir une seule donnée. Voir : $url");
61
		$this->assertEquals(1, count($retour['resultat']), "Le résultat devrait contenir une seule donnée. Voir : $url");
62
	}
62
	}
63
/*
-
 
Line 64... Line 63...
64
 
63
 
65
	public function testResultatChamps() {
64
	public function testResultatChamps() {
66
		$ressources = array('v1.01');
65
		$ressources = array('v1.01');
67
		$parametres = array(
66
		$parametres = array(
68
						'recherche' => 'stricte',
67
						'recherche' => 'stricte',
69
						'masque.nn' => '182');
68
						'masque.nn' => '182');
Line 70... Line -...
70
		$url = $this->creerUrl($ressources, $parametres);
-
 
71
 
69
		$url = $this->creerUrl($ressources, $parametres);
72
		$noms = new Noms(array());
-
 
73
		$retourJson = $noms->consulter($ressources, $parametres);
-
 
Line 74... Line 70...
74
		$retour = json_decode($retourJson, true);
70
 
75
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
71
		$retour = $this->consulterJson($ressources, $parametres);
76
 
72
 
77
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url");
73
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url");
Line 85... Line 81...
85
	}
81
	}
Line 86... Line 82...
86
 
82
 
87
	public function testMasqueSg() {
83
	public function testMasqueSg() {
88
		$ressources = array('v1.01');
84
		$ressources = array('v1.01');
89
		$parametres = array(
85
		$parametres = array(
90
				'recherche' => 'stricte',
86
					'recherche' => 'stricte',
91
				'masque.sg' => 'Asteraceae');
87
					'masque.sg' => 'Asteraceae');
Line 92... Line -...
92
		$url = $this->creerUrl($ressources, $parametres);
-
 
93
 
88
		$url = $this->creerUrl($ressources, $parametres);
94
		$noms = new Noms(array());
-
 
95
		$retourJson = $noms->consulter($ressources, $parametres);
-
 
96
		$retour = json_decode($retourJson, true);
89
 
97
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
90
		$retour = $this->consulterJson($ressources, $parametres);
98
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
91
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
99
		$this->assertEquals('nom_supra_generique=Asteraceae', $retour['entete']['masque'], "L'attribut 'masque' de l'entête devrait valoir 'nom_supra_generique=Asteraceae'. Voir : $url");
92
		$this->assertEquals('nom_supra_generique=Asteraceae', $retour['entete']['masque'], "L'attribut 'masque' de l'entête devrait valoir 'nom_supra_generique=Asteraceae'. Voir : $url");
100
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url");
93
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat. Voir : $url");
101
		$this->assertEquals('1', $retour['entete']['total'], "L'attribut 'total' de l'entête devrait valoir 1. Voir : $url");
94
		$this->assertEquals('1', $retour['entete']['total'], "L'attribut 'total' de l'entête devrait valoir 1. Voir : $url");
Line 102... Line 95...
102
		$this->assertEquals(1, count($retour['resultat']), "Le résultat devrait contenir une seule donnée. Voir : $url");
95
		$this->assertEquals(1, count($retour['resultat']), "Le résultat devrait contenir une seule donnée. Voir : $url");
103
	}
96
	}
104
 
97
 
105
	public function testMasqueGenSpSspAuAn() {
98
	public function testMasqueGenSpSspAuAn() {
106
		$ressources = array('v1.01');
99
		$ressources = array('v1.01');
107
		$parametres = array(
100
		$parametres = array(
108
			'recherche' => 'stricte',
101
				'recherche' => 'stricte',
109
			'masque.gen' => 'Allium',
102
				'masque.gen' => 'Allium',
110
			'masque.sp' => 'carinatum',
103
				'masque.sp' => 'carinatum',
111
			'masque.ssp' => 'consimile',
104
				'masque.ssp' => 'consimile',
Line 112... Line -...
112
			'masque.au' => 'Gren.',
-
 
113
			'masque.an' => '1855');
105
				'masque.au' => 'Gren.',
114
		$url = $this->creerUrl($ressources, $parametres);
-
 
115
 
-
 
-
 
106
				'masque.an' => '1855');
116
		$noms = new Noms(array());
107
		$url = $this->creerUrl($ressources, $parametres);
Line 117... Line 108...
117
		$retourJson = $noms->consulter($ressources, $parametres);
108
 
118
		$retour = json_decode($retourJson, true);
109
		$retour = $this->consulterJson($ressources, $parametres);
119
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
110
 
Line 129... Line 120...
129
	}
120
	}
Line 130... Line 121...
130
 
121
 
131
	public function testMasqueNn() {
122
	public function testMasqueNn() {
132
		$ressources = array('v1.01');
123
		$ressources = array('v1.01');
133
		$parametres = array(
124
		$parametres = array(
134
				'recherche' => 'stricte',
125
					'recherche' => 'stricte',
135
				'masque.nn' => '182');
126
					'masque.nn' => '182');
Line 136... Line -...
136
		$url = $this->creerUrl($ressources, $parametres);
-
 
137
 
127
		$url = $this->creerUrl($ressources, $parametres);
138
		$noms = new Noms(array());
-
 
139
		$retourJson = $noms->consulter($ressources, $parametres);
-
 
140
		$retour = json_decode($retourJson, true);
128
 
141
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
129
		$retour = $this->consulterJson($ressources, $parametres);
142
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
130
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
143
		$masque = 'num_nom=182';
131
		$masque = 'num_nom=182';
144
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
132
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
Line 156... Line 144...
156
		$parametres = array(
144
		$parametres = array(
157
					'recherche' => 'stricte',
145
					'recherche' => 'stricte',
158
					'masque.rg' => '180');
146
					'masque.rg' => '180');
159
		$url = $this->creerUrl($ressources, $parametres);
147
		$url = $this->creerUrl($ressources, $parametres);
Line 160... Line -...
160
 
-
 
161
		$noms = new Noms(array());
148
 
162
		$retourJson = $noms->consulter($ressources, $parametres);
-
 
163
		$retour = json_decode($retourJson, true);
-
 
164
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
149
		$retour = $this->consulterJson($ressources, $parametres);
165
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
150
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
166
		$masque = 'rang=180';
151
		$masque = 'rang=180';
167
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
152
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
168
		$this->assertEquals($masque, $retour['entete']['masque'], $message);
153
		$this->assertEquals($masque, $retour['entete']['masque'], $message);
Line 176... Line 161...
176
			'masque.nn' => '182',
161
			'masque.nn' => '182',
177
			'ns.format' => 'txt',
162
			'ns.format' => 'txt',
178
			'ns.structure' => 'au,an,bib,ad');
163
			'ns.structure' => 'au,an,bib,ad');
179
		$url = $this->creerUrl($ressources, $parametres);
164
		$url = $this->creerUrl($ressources, $parametres);
Line 180... Line -...
180
 
-
 
181
		$noms = new Noms(array());
165
 
182
		$retourJson = $noms->consulter($ressources, $parametres);
-
 
183
		$retour = json_decode($retourJson, true);
-
 
184
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
166
		$retour = $this->consulterJson($ressources, $parametres);
185
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
167
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
186
		$masque = 'num_nom=182';
168
		$masque = 'num_nom=182';
187
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
169
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
188
		$this->assertEquals($masque, $retour['entete']['masque'], $message);
170
		$this->assertEquals($masque, $retour['entete']['masque'], $message);
Line 199... Line 181...
199
				'masque.nn' => '182',
181
				'masque.nn' => '182',
200
				'ns.format' => 'htm',
182
				'ns.format' => 'htm',
201
				'ns.structure' => 'au,an,bib,ad');
183
				'ns.structure' => 'au,an,bib,ad');
202
		$url = $this->creerUrl($ressources, $parametres);
184
		$url = $this->creerUrl($ressources, $parametres);
Line 203... Line -...
203
 
-
 
204
		$noms = new Noms(array());
185
 
205
		$retourJson = $noms->consulter($ressources, $parametres);
-
 
206
		$retour = json_decode($retourJson, true);
-
 
207
		$this->assertEquals(JSON_ERROR_NONE, json_last_error(), "Le json contient des erreurs qui bloquent le décodage. Voir : $url");
186
		$retour = $this->consulterJson($ressources, $parametres);
208
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
187
		$this->assertArrayHasKey('entete', $retour, "Le json ne contient pas d'attribut : entete. Voir : $url");
209
		$masque = 'num_nom=182';
188
		$masque = 'num_nom=182';
210
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
189
		$message = "L'attribut 'masque' de l'entête devrait valoir '$masque'. Voir : $url";
211
		$this->assertEquals($masque, $retour['entete']['masque'], $message);
190
		$this->assertEquals($masque, $retour['entete']['masque'], $message);
Line 214... Line 193...
214
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat.\nVoir : $url");
193
		$this->assertArrayHasKey('resultat', $retour, "Le json ne contient pas d'attribut : resultat.\nVoir : $url");
215
		$attendu = '<span class=sci><span class="gen">Acer</span> <span class="sp">monspessulanum</span></span> <span class="auteur">L.</span> [<span class="annee">1753</span>, <span class="biblio">Sp. Pl., éd. 1 : 1056</span>]';
194
		$attendu = '<span class=sci><span class="gen">Acer</span> <span class="sp">monspessulanum</span></span> <span class="auteur">L.</span> [<span class="annee">1753</span>, <span class="biblio">Sp. Pl., éd. 1 : 1056</span>]';
216
		$message = "Le tableau du résultat 182 doit contenir un champ 'nom_sci' avec pour valeur '$attendu'. Voir : $url";
195
		$message = "Le tableau du résultat 182 doit contenir un champ 'nom_sci' avec pour valeur '$attendu'. Voir : $url";
217
		$this->assertEquals($attendu, $retour['resultat']['182']['nom_sci'], $message);
196
		$this->assertEquals($attendu, $retour['resultat']['182']['nom_sci'], $message);
218
	}
197
	}
219
*/
198
 
220
	//+------------------------------------------------------------------------------------------------------+
199
	//+------------------------------------------------------------------------------------------------------+
221
	// Refactorisation
200
	// Refactorisation
222
	private function consulterJson($ressources, $parametres) {
201
	private function consulterJson($ressources, $parametres) {
223
		$retourJson = $this->consulterBrut($ressources, $parametres);
202
		$retourJson = $this->consulterBrut($ressources, $parametres);
224
		$retour = json_decode($retourJson, true);
203
		$retour = json_decode($retourJson, true);