Rev 64 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?phpclass EfloreScriptPhpUnitTestCase extends PHPUnit_Framework_TestCase {public static function setUpBeforeClass() {error_reporting(E_ALL);$cheminRacine = realpath(dirname(__FILE__).'/../../').'/';$framework = $cheminRacine.'framework.php';if (!file_exists($framework)) {$e = "Veuillez paramétrer l'emplacement et la version du Framework dans le fichier $framework";trigger_error($e, E_USER_ERROR);} else {// Inclusion du Frameworkrequire_once $framework;// Ajout d'information concernant cette applicationFramework::setCheminAppli($cheminRacine);// Obligatoire}}//+------------------------------------------------------------------------------------------------------+// Méthodes facilitant les tests/*** Récupère un bouchon de classe abstraite.* Comment l'utiliser :* $classeAstraite = $this->getClasseAbstraite('MaClasse', array('param1', 'param2'));* $foo = $classeAstraite->methodeConcretePublique();** @param String $classeNom Le nom de la classe* @param Array $parametres Les paramètres à passer au constructeur.* @return Object Le bouchon de la classe abstraite*/public function getClasseAbstraite($classeNom, Array $parametres) {$efloreScript = $this->getMockForAbstractClass($classeNom, $parametres);return $efloreScript;}/*** Récupère une méthode privée d'une classe pour tester/documenter.* Comment l'utiliser :* MyClass->foo():* $cls = new MyClass();* $foo = self::getPrivateMethode($cls, 'foo');* $foo->invoke($cls, $...);** @param object $objet Une instance de votre classe* @param string $methode Le nom de la méthode private* @return ReflectionMethod La méthode demandée*/public static function getPrivateMethode($objet, $nomMethode) {$classe = new ReflectionClass($objet);$methode = $classe->getMethod($nomMethode);$methode->setAccessible(true);return $methode;}/*** Récupère une méthode protégée d'une classe pour tester/documenter.* Comment l'utiliser :* MyClass->foo():* $cls = new MyClass();* $foo = self::getProtectedMethode($cls, 'foo');* $foo->invoke($cls, $...);* @param object $objet Une instance de votre classe* @param string $methode Le nom de la méthode protected* @return ReflectionMethod La méthode demandée*/public static function getProtectedMethode($objet, $nomMethode) {return self::getPrivateMethode($objet, $nomMethode);}}?>