premier commit
This commit is contained in:
commit
f5df760e18
65
EndUnit/EndUnit-v1.0.php
Normal file
65
EndUnit/EndUnit-v1.0.php
Normal file
@ -0,0 +1,65 @@
|
||||
<?php
|
||||
namespace endunit;
|
||||
/**
|
||||
* EndUnit
|
||||
*
|
||||
* Classe statique de permettant de faire des tests utilitaires
|
||||
* pour vérifier le bon comportement de son code.
|
||||
*
|
||||
* @package endunit
|
||||
*
|
||||
* @version 1.0
|
||||
* @author Jérémi N 'EndMove'
|
||||
*/
|
||||
class EndUnit {
|
||||
/**
|
||||
* Vérifier que deux string/int/double sont égaux.
|
||||
*
|
||||
* @return string Information sur le status du test 'Pass' ou 'Fail'
|
||||
* Certaine informations complémentaires peuvent être
|
||||
* jointes à la valeur de retour du test.
|
||||
* @param string|int|float $expectedValue Valeur attendue par le programme.
|
||||
* @param string|int|float $currentValue Valeur renvoyer par le programme.
|
||||
*
|
||||
* @since 1.0
|
||||
*
|
||||
* @author Jérémi N 'EndMove'
|
||||
*/
|
||||
public static function assertEquals(string|int|float $expectedValue, string|int|float|null $currentValue) : string
|
||||
{
|
||||
if ($expectedValue === $currentValue) return "<p><b class='pass'>Pass</b></p>";
|
||||
else return sprintf("<p><b class='fail'>Fail</b> - expected: \"<code>%s</code>\"".
|
||||
" <i>(type %s)</i>, but was: \"<code>%s</code>\" <i>(type %s)</i></p>",
|
||||
$expectedValue, gettype($expectedValue), $currentValue, gettype($currentValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Vérifier que le résultat est bien un boolean de valeur true.
|
||||
*
|
||||
* @return string Information sur le status du test 'Pass' ou 'Fail'.
|
||||
* @param bool $currentValue Un boolean.
|
||||
*
|
||||
* @since 1.0
|
||||
*
|
||||
* @author Jérémi N 'EndMove'
|
||||
*/
|
||||
public static function assertTrue(bool|null $currentValue) : string
|
||||
{
|
||||
return $currentValue === true ? "<p><b class='pass'>Pass</b></p>" : "<p><b class='fail'>Fail</b></p>";
|
||||
}
|
||||
|
||||
/**
|
||||
* Vérifier que le résultat est bien un boolean de valeur false.
|
||||
*
|
||||
* @return string Information sur le status du test 'Pass' ou 'Fail'.
|
||||
* @param bool $currentValue Un boolean.
|
||||
*
|
||||
* @since 1.0
|
||||
*
|
||||
* @author Jérémi N 'EndMove'
|
||||
*/
|
||||
public static function assertFalse(bool|null $currentValue) : string
|
||||
{
|
||||
return $currentValue === false ? "<p><b class='pass'>Pass</b></p>" : "<p><b class='fail'>Fail</b></p>";
|
||||
}
|
||||
}
|
73
functions.php
Normal file
73
functions.php
Normal file
@ -0,0 +1,73 @@
|
||||
<?php
|
||||
// Tips : ne pas oublier de compléter les fonctions en indiquant le
|
||||
// type de données avec lesquels elles travaillent.
|
||||
// testez vos fonctions avec le fichier de test unitaire.
|
||||
|
||||
|
||||
/**
|
||||
* Cette fonction prend un string en paramètre (nom) et renvoie un
|
||||
* string contenant la première lettre du nom en majuscule.
|
||||
*
|
||||
* Exemple :
|
||||
* nihart => N
|
||||
* Nihart => N
|
||||
* florquin => F
|
||||
* FLORQUIN => F
|
||||
* lUNAR => L
|
||||
* lunar => L
|
||||
*
|
||||
* Aide : Voir cours théorique
|
||||
*/
|
||||
function getLastNameFirstLetter($lastname)
|
||||
{
|
||||
// code...
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Cette fonction prend deux string en paramètre (prénom, nom) et renvoie un
|
||||
* string contenant le prénom avec seulement la première lettre en majuscule
|
||||
* suivi de la première lettre du nom en majuscule suivie d'un point.
|
||||
*
|
||||
* Exemple :
|
||||
* jérémi nihart => Jérémi N.
|
||||
* coRALIE floRQUin => Coralie F.
|
||||
* samuel pettron => Samuel P.
|
||||
*
|
||||
* Condition de réussit : cette fonction doit utiliser la fonction
|
||||
* getLastNameFirstLetter() créer précédement.
|
||||
*/
|
||||
function getFormatedFullName($firstname, $lastname)
|
||||
{
|
||||
// code...
|
||||
}
|
||||
|
||||
|
||||
/** FACULTATIF (EX: sur conditions et opérations dégalité et grandeur)
|
||||
* Cette fonction prend un int en paramètre (l'index de santé) et renvoie
|
||||
* un boolean [bool] qui est vrai si la personne qui possède cet index
|
||||
* est en bonne santé et qui renvoie faux si la personne qui possède cet
|
||||
* index est en mauvaise santé.
|
||||
*
|
||||
* Calcul :
|
||||
* Si l'index est négatif ou égale à zéro => mauvaise santé
|
||||
* Si l'index est pausitif et inférieur à 100 => bonne santé
|
||||
* Si l'index est supérieur ou égale à 100 => mauvaise santé
|
||||
* Donc :
|
||||
* mauvaise santé si (index <= 0 || index >= 100) et dans tous les
|
||||
* autres cas bonne santé.
|
||||
*
|
||||
* Exemple :
|
||||
* -15 => false
|
||||
* -1 => false
|
||||
* 0 => false
|
||||
* 10 => true
|
||||
* 59 => true
|
||||
* 99 => true
|
||||
* 100 => false
|
||||
* 152 => false
|
||||
*/
|
||||
function getHealthyStatus($index)
|
||||
{
|
||||
// code...
|
||||
}
|
103
functionsTests.php
Normal file
103
functionsTests.php
Normal file
@ -0,0 +1,103 @@
|
||||
<?php
|
||||
// Fichier des tests unitaires de l'exercice 1
|
||||
include 'functions.php';
|
||||
require 'EndUnit/EndUnit-v1.0.php';
|
||||
use endunit\EndUnit;
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Tests Unitaires</title>
|
||||
<style type="text/css">
|
||||
body {
|
||||
background-color: #3b3f42;
|
||||
color: #c2c8cf;
|
||||
}
|
||||
i {
|
||||
color: #F3C178;
|
||||
}
|
||||
code {
|
||||
color: #FFFFFF;
|
||||
}
|
||||
b.pass {
|
||||
color: #00A878;
|
||||
}
|
||||
b.fail {
|
||||
color: #FE5E41;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Tests Unitaires | Exercice 1</h1>
|
||||
|
||||
<h2>fonction : getLastNameFirstLetter()</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<h3>Test #1 avec : ("nihart")</h3>
|
||||
<?= EndUnit::assertEquals('N', getLastNameFirstLetter("nihart")) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #2 avec : ("renderkler")</h3>
|
||||
<?= EndUnit::assertEquals('R', getLastNameFirstLetter("renderkler")) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #3 avec : ("florquin")</h3>
|
||||
<?= EndUnit::assertEquals('R', getLastNameFirstLetter("florquin")) ?>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>fonction : getFormatedFullName()</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<h3>Test #1 avec : ("jérémi", "nihart")</h3>
|
||||
<?= EndUnit::assertEquals('Jérémi N.', getFormatedFullName("jérémi", "nihart")) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #2 avec : ("JEREMI", "NIHART")</h3>
|
||||
<?= EndUnit::assertEquals('Jeremi N.', getFormatedFullName("JEREMI", "NIHART")) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #3 avec : ("CoRalIe", "flo")</h3>
|
||||
<?= EndUnit::assertEquals('Coralie F.', getFormatedFullName("CoRalIe", "flo")) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #4 avec : ("gérare", "paqUeT")</h3>
|
||||
<?= EndUnit::assertEquals('Gérare P.', getFormatedFullName("gérare", "paqUeT")) ?>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>fonction : getHealthyStatus()</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<h3>Test #1 avec : (1)</h3>
|
||||
<?= EndUnit::assertTrue(getHealthyStatus(1)) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #2 avec : (16)</h3>
|
||||
<?= EndUnit::assertTrue(getHealthyStatus(16)) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #3 avec : (99)</h3>
|
||||
<?= EndUnit::assertTrue(getHealthyStatus(99)) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #4 avec : (-451)</h3>
|
||||
<?= EndUnit::assertFalse(getHealthyStatus(-451)) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #5 avec : (0)</h3>
|
||||
<?= EndUnit::assertFalse(getHealthyStatus(0)) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #6 avec : (100)</h3>
|
||||
<?= EndUnit::assertFalse(getHealthyStatus(100)) ?>
|
||||
</li>
|
||||
<li>
|
||||
<h3>Test #7 avec : (179)</h3>
|
||||
<?= EndUnit::assertFalse(getHealthyStatus(179)) ?>
|
||||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user