Subversion Repositories eFlore/Projets.eflore-projets

Rev

Rev 947 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 947 Rev 949
Line 1... Line 1...
1
<?php
1
<?php
2
// declare(encoding='UTF-8');
2
// declare(encoding='UTF-8');
3
/**
3
/**
4
 * Classe contenant des méthodes :
4
 * Classe contenant des méthodes :
5
 *  - d'intialisation des tests,
5
 *	- d'intialisation des tests,
6
 *  - refactorisant le code des tests,
6
 *	- refactorisant le code des tests,
7
 *  - facilitant les tests.
7
 *	- facilitant les tests.
8
 *
8
 *
9
 * @category	php 5.3
9
 * @category	php 5.3
10
 * @package		Tests/Services
10
 * @package		Tests/Services
11
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
11
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
12
 * @copyright	Copyright (c) 2011, Tela Botanica (accueil@tela-botanica.org)
12
 * @copyright	Copyright (c) 2011, Tela Botanica (accueil@tela-botanica.org)
Line 49... Line 49...
49
		}
49
		}
50
	}
50
	}
Line 51... Line 51...
51
 
51
 
52
	private static function chargerFramework() {
52
	private static function chargerFramework() {
53
		static $cheminRacine;
53
		static $cheminRacine;
54
        if(!$cheminRacine) {
54
		if(!$cheminRacine) {
55
            $cheminRacine = realpath(dirname(__FILE__).'/../..').'/';
55
			$cheminRacine = realpath(dirname(__FILE__).'/../..').'/';
56
            $framework = $cheminRacine.'framework.php';
56
			$framework = $cheminRacine.'framework.php';
57
            if (!file_exists($framework)) {
57
			if (!file_exists($framework)) {
58
                $e = "Veuillez paramétrer l'emplacement et la version du Framework dans le fichier $framework";
58
				$e = "Veuillez paramétrer l'emplacement et la version du Framework dans le fichier $framework";
59
                trigger_error($e, E_USER_ERROR);
59
				trigger_error($e, E_USER_ERROR);
60
            } else {
60
			} else {
61
                // Inclusion du Framework
61
				// Inclusion du Framework
62
                require_once $framework;
62
				require_once $framework;
63
                // Ajout d'information concernant cette application
63
				// Ajout d'information concernant cette application
64
                Framework::setCheminAppli($cheminRacine);// Obligatoire
64
				Framework::setCheminAppli($cheminRacine);// Obligatoire
65
            }
65
			}
66
        }
66
		}
Line 67... Line 67...
67
    }
67
	}
68
 
68
 
69
	//+------------------------------------------------------------------------------------------------------+
69
	//+------------------------------------------------------------------------------------------------------+
70
	// Refactorisation
70
	// Refactorisation
Line 85... Line 85...
85
	}
85
	}
Line 86... Line 86...
86
 
86
 
87
	static function creerUrl($service, $ressources, $parametres = NULL) {
87
	static function creerUrl($service, $ressources, $parametres = NULL) {
88
		// TODO ? $version
88
		// TODO ? $version
89
		$ressourcesUrl = array();
89
		$ressourcesUrl = array();
90
		foreach ($ressources as $ressource) {
-
 
91
			$ressourcesUrl[] = $ressource;
-
 
92
		}
90
		if($ressources) foreach ($ressources as $ressource) $ressourcesUrl[] = $ressource;
Line 93... Line 91...
93
		$ressourcesUrl = count($ressourcesUrl) > 0 ? '/'.implode('/', $ressourcesUrl) : '';
91
		$ressourcesUrl = count($ressourcesUrl) > 0 ? '/'.implode('/', $ressourcesUrl) : '';
94
 
92
 
95
		$parametresUrl = '';
93
		$parametresUrl = '';
Line 107... Line 105...
107
	// Méthodes facilitant les tests
105
	// Méthodes facilitant les tests
Line 108... Line 106...
108
 
106
 
109
	/**
107
	/**
110
	* Récupère un bouchon de classe abstraite.
108
	* Récupère un bouchon de classe abstraite.
111
	* Comment l'utiliser :
109
	* Comment l'utiliser :
112
	* 	$classeAstraite = $this->getClasseAbstraite('MaClasse', array('param1', 'param2'));
110
	*	$classeAstraite = $this->getClasseAbstraite('MaClasse', array('param1', 'param2'));
113
	*   $foo = $classeAstraite->methodeConcretePublique();
111
	*	$foo = $classeAstraite->methodeConcretePublique();
114
	*
112
	*
115
	* @param String $classeNom Le nom de la classe
113
	* @param String $classeNom Le nom de la classe
116
	* @param Array $parametres Les paramètres à passer au constructeur.
114
	* @param Array $parametres Les paramètres à passer au constructeur.
117
	* @return Object Le bouchon de la classe abstraite
115
	* @return Object Le bouchon de la classe abstraite
Line 122... Line 120...
122
	}
120
	}
Line 123... Line 121...
123
 
121
 
124
	/**
122
	/**
125
	 * Récupère une méthode privée d'une classe pour tester/documenter.
123
	 * Récupère une méthode privée d'une classe pour tester/documenter.
126
	 * Comment l'utiliser :
124
	 * Comment l'utiliser :
127
	 * 	MyClass->foo():
125
	 *	MyClass->foo():
128
	 *   $cls = new MyClass();
126
	 *	 $cls = new MyClass();
129
	 *   $foo = self::getPrivateMethode($cls, 'foo');
127
	 *	 $foo = self::getPrivateMethode($cls, 'foo');
130
	 *   $foo->invoke($cls, $...);
128
	 *	 $foo->invoke($cls, $...);
131
	 *
129
	 *
132
	 * @param object $objet Une instance de votre classe
130
	 * @param object $objet Une instance de votre classe
133
	 * @param string $methode Le nom de la méthode private
131
	 * @param string $methode Le nom de la méthode private
134
	 * @return ReflectionMethod La méthode demandée
132
	 * @return ReflectionMethod La méthode demandée
Line 141... Line 139...
141
	}
139
	}
Line 142... Line 140...
142
 
140
 
143
	/**
141
	/**
144
	* Récupère une méthode protégée d'une classe pour tester/documenter.
142
	* Récupère une méthode protégée d'une classe pour tester/documenter.
145
	* Comment l'utiliser :
143
	* Comment l'utiliser :
146
	* 	MyClass->foo():
144
	*	MyClass->foo():
147
	*   $cls = new MyClass();
145
	*	$cls = new MyClass();
148
	*   $foo = self::getProtectedMethode($cls, 'foo');
146
	*	$foo = self::getProtectedMethode($cls, 'foo');
149
	*   $foo->invoke($cls, $...);
147
	*	$foo->invoke($cls, $...);
150
	* @param object $objet Une instance de votre classe
148
	* @param object $objet Une instance de votre classe
151
	* @param string $methode Le nom de la méthode protected
149
	* @param string $methode Le nom de la méthode protected
152
	* @return ReflectionMethod La méthode demandée
150
	* @return ReflectionMethod La méthode demandée
153
	*/
151
	*/
154
	public static function getMethodeProtegee($objet, $nomMethode) {
152
	public static function getMethodeProtegee($objet, $nomMethode) {
155
		return self::getMethodePrivee($objet, $nomMethode);
153
		return self::getMethodePrivee($objet, $nomMethode);
-
 
154
	}
-
 
155
 
-
 
156
	public function assertArrayHasKeys(array $keys, array $array, $message = null) {
-
 
157
		foreach ($keys as $key) {
-
 
158
			$this->assertArrayHasKey($key, $array, $message);
-
 
159
		}
156
	}
160
	}
Line 157... Line 161...
157
}
161
}
158
 
162
 
159
/*
163
/*