Compare commits
8 Commits
master
...
issue_023_
Author | SHA1 | Date |
---|---|---|
|
18f7205540 | 1 year ago |
|
ca732f2c97 | 1 year ago |
|
64c04a97f6 | 1 year ago |
|
c09ce09b26 | 1 year ago |
|
8a2736e6ff | 1 year ago |
|
5be89731ad | 1 year ago |
|
5b970ccd74 | 1 year ago |
|
13a1c02d83 | 1 year ago |
File diff suppressed because it is too large
Load Diff
@ -0,0 +1 @@
|
||||
{"version":1,"defects":{"MaClasseTest::testMethode":5,"ExampleTest::testMethode":5,"toto::testMethode":5,"AthleteGateway::testGateway":5,"Database\\Tests\\AthleteGatewayTest::testGetAthlete":4,"Database\\Tests\\AthleteGatewayTest::testGetAthleteById":4,"Database\\Tests\\AthleteGatewayTest::testAddAthlete":4,"Database\\Tests\\AthleteGatewayTest::testUpdateAthlete":4,"Database\\Tests\\AthleteGatewayTest::testDeleteAthlete":4,"Database\\AthleteGatewayTest::testGetAthlete":4,"Database\\AthleteGatewayTest::testGetAthleteById":4,"Database\\AthleteGatewayTest::testAddAthlete":4,"Database\\AthleteGatewayTest::testUpdateAthlete":4,"Database\\AthleteGatewayTest::testDeleteAthlete":4,"AthleteGatewayTest::testAddAndGetAthlete":4,"AthleteGatewayTest::testGetAthlete":5,"AthleteGatewayTest::testAddAthlete":5,"AthleteGatewayTest::testDeleteAthlete":4,"AthleteGatewayTest::testUpdateAthlete":5,"AthleteMapperTest::testMapperAthlete":5,"GatewayTest::testGetAthlete":5,"GatewayTest::testUpdateAthlete":5,"MapperTest::testMapperAthlete":5,"GatewayTest::testGetCoach":5,"GatewayTest::testAddCoach":4},"times":{"MaClasseTest::testMethode":0.001,"ExampleTest::testMethode":0.001,"toto::testMethode":0.001,"AthleteGateway::testGateway":0.048,"Database\\Tests\\AthleteGatewayTest::testGetAthlete":0.001,"Database\\Tests\\AthleteGatewayTest::testGetAthleteById":0.001,"Database\\Tests\\AthleteGatewayTest::testAddAthlete":0.072,"Database\\Tests\\AthleteGatewayTest::testUpdateAthlete":0.001,"Database\\Tests\\AthleteGatewayTest::testDeleteAthlete":0.001,"Database\\AthleteGatewayTest::testGetAthlete":0.002,"Database\\AthleteGatewayTest::testGetAthleteById":0,"Database\\AthleteGatewayTest::testAddAthlete":0,"Database\\AthleteGatewayTest::testUpdateAthlete":0,"Database\\AthleteGatewayTest::testDeleteAthlete":0,"AthleteGatewayTest::testAddAndGetAthlete":0.028,"AthleteGatewayTest::testGetAthlete":0.004,"AthleteGatewayTest::testAddAthlete":0.005,"AthleteGatewayTest::testDeleteAthlete":0.003,"AthleteGatewayTest::testUpdateAthlete":0.006,"AthleteMapperTest::testMapperAthlete":0.004,"GatewayTest::testGetAthlete":0.005,"GatewayTest::testUpdateAthlete":0.009,"MapperTest::testMapperAthlete":0.018,"GatewayTest::testGetCoach":0.055,"GatewayTest::testAddCoach":0.015}}
|
@ -0,0 +1,127 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
|
||||
class ActiviteEntity {
|
||||
private $idActivite;
|
||||
private $type;
|
||||
private $date;
|
||||
private $heureDebut;
|
||||
private $heureFin;
|
||||
private $effortRessenti;
|
||||
private $variabilite;
|
||||
private $variance;
|
||||
private $ecartType;
|
||||
private $moyenne;
|
||||
private $maximum;
|
||||
private $minimum;
|
||||
private $temperatureMoyenne;
|
||||
|
||||
// Getters
|
||||
public function getIdActivite() {
|
||||
return $this->idActivity;
|
||||
}
|
||||
|
||||
public function getType() {
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
public function getDate() {
|
||||
return $this->date;
|
||||
}
|
||||
|
||||
public function getHeureDebut() {
|
||||
return $this->heureDebut;
|
||||
}
|
||||
|
||||
public function getHeureFin() {
|
||||
return $this->heureFin;
|
||||
}
|
||||
|
||||
public function getEffortRessenti() {
|
||||
return $this->effortRessenti;
|
||||
}
|
||||
|
||||
public function getVariabilite() {
|
||||
return $this->variabilite;
|
||||
}
|
||||
|
||||
public function getVariance() {
|
||||
return $this->variance;
|
||||
}
|
||||
|
||||
public function getEcartType() {
|
||||
return $this->ecartType;
|
||||
}
|
||||
|
||||
public function getMoyenne() {
|
||||
return $this->moyenne;
|
||||
}
|
||||
|
||||
public function getMaximum() {
|
||||
return $this->maximum;
|
||||
}
|
||||
|
||||
public function getMinimum() {
|
||||
return $this->minimum;
|
||||
}
|
||||
|
||||
public function getTemperatureMoyenne() {
|
||||
return $this->temperatureMoyenne;
|
||||
}
|
||||
|
||||
// Setters
|
||||
public function setIdActivite($idActivite) {
|
||||
$this->idActivity = $idActivity;
|
||||
}
|
||||
|
||||
public function setType($type) {
|
||||
$this->type = $type;
|
||||
}
|
||||
|
||||
public function setDate($date) {
|
||||
$this->date = $date;
|
||||
}
|
||||
|
||||
public function setHeureDebut($heureDebut) {
|
||||
$this->heureDebut = $heureDebut;
|
||||
}
|
||||
|
||||
public function setHeureFin($heureFin) {
|
||||
$this->heureFin = $heureFin;
|
||||
}
|
||||
|
||||
public function setEffortRessenti($effortRessenti) {
|
||||
$this->effortRessenti = $effortRessenti;
|
||||
}
|
||||
|
||||
public function setVariabilite($variabilite) {
|
||||
$this->variabilite = $variabilite;
|
||||
}
|
||||
|
||||
public function setVariance($variance) {
|
||||
$this->variance = $variance;
|
||||
}
|
||||
|
||||
public function setEcartType($ecartType) {
|
||||
$this->ecartType = $ecartType;
|
||||
}
|
||||
|
||||
public function setMoyenne($moyenne) {
|
||||
$this->moyenne = $moyenne;
|
||||
}
|
||||
|
||||
public function setMaximum($maximum) {
|
||||
$this->maximum = $maximum;
|
||||
}
|
||||
|
||||
public function setMinimum($minimum) {
|
||||
$this->minimum = $minimum;
|
||||
}
|
||||
|
||||
public function setTemperatureMoyenne($temperatureMoyenne) {
|
||||
$this->temperatureMoyenne = $temperatureMoyenne;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,120 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
|
||||
class ActiviteGateway {
|
||||
private $connection;
|
||||
|
||||
public function __construct(Connection $connection) {
|
||||
$this->connection = $connection;
|
||||
}
|
||||
|
||||
public function getActivite() {
|
||||
$query = "SELECT * FROM Activite";
|
||||
return $this->connection->executeWithErrorHandling($query);
|
||||
}
|
||||
|
||||
public function getActiviteById(int $activiteId) {
|
||||
$query = "SELECT * FROM Activite WHERE idActivite = :id";
|
||||
$params = [':id' => [$activiteId, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getActiviteByType(string $type) {
|
||||
$query = "SELECT * FROM Activite WHERE type = :type";
|
||||
$params = [':type' => [$type, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getActiviteByDate(string $date) {
|
||||
$query = "SELECT * FROM Activite WHERE date = :date";
|
||||
$params = [':date' => [$date, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getActiviteByTimeRange(string $startTime, string $endTime) {
|
||||
$query = "SELECT * FROM Activite WHERE heureDebut >= :startTime AND heureFin <= :endTime";
|
||||
$params = [
|
||||
':startTime' => [$startTime, PDO::PARAM_STR],
|
||||
':endTime' => [$endTime, PDO::PARAM_STR]
|
||||
];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getActiviteByEffort(int $effortRessenti) {
|
||||
$query = "SELECT * FROM Activite WHERE effortRessenti = :effort";
|
||||
$params = [':effort' => [$effortRessenti, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getActiviteByVariability(int $variabilite) {
|
||||
$query = "SELECT * FROM Activite WHERE variabilite = :variability";
|
||||
$params = [':variability' => [$variabilite, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getActiviteByTemperature(int $temperatureMoyenne) {
|
||||
$query = "SELECT * FROM Activite WHERE temperatureMoyenne = :temperature";
|
||||
$params = [':temperature' => [$temperatureMoyenne, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function addActivite(ActiviteEntity $activite) {
|
||||
$query = "INSERT INTO Activite (type, date, heureDebut, heureDeFin, effortRessenti, variabilite, variance, ecartType, moyenne, maximum, minimum, temperatureMoyenne)
|
||||
VALUES (:type, :date, :heureDebut, :heureDeFin, :effortRessenti, :variabilite, :variance, :ecartType, :moyenne, :maximum, :minimum, :temperatureMoyenne)";
|
||||
|
||||
$params = [
|
||||
':type' => $activite->getType(),
|
||||
':date' => $activite->getDate()->format('Y-m-d'), // Format date pour SQL
|
||||
':heureDebut' => $activite->getHeureDebut()->format('H:i:s'), // Format heure pour SQL
|
||||
':heureDeFin' => $activite->getHeureFin()->format('H:i:s'), // Format heure pour SQL
|
||||
':effortRessenti' => $activite->getEffortRessenti(),
|
||||
':variabilite' => $activite->getVariabilite(),
|
||||
':variance' => $activite->getVariance(),
|
||||
':ecartType' => $activite->getEcartType(),
|
||||
':moyenne' => $activite->getMoyenne(),
|
||||
':maximum' => $activite->getMaximum(),
|
||||
':minimum' => $activite->getMinimum(),
|
||||
':temperatureMoyenne' => $activite->getTemperatureMoyenne(),
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function updateActivite(ActiviteEntity $oldActivite, ActiviteEntity $newActivite) {
|
||||
$query = "UPDATE Activite
|
||||
SET type = :type, date = :date, heureDebut = :heureDebut, heureDeFin = :heureDeFin,
|
||||
effortRessenti = :effortRessenti, variabilite = :variabilite, variance = :variance, ecartType = :ecartType, moyenne = :moyenne, maximum = :maximum, minimum = :minimum, temperatureMoyenne = :temperatureMoyenne
|
||||
WHERE idActivite = :idActivite";
|
||||
|
||||
$params = [
|
||||
':idActivite' => $oldActivite->getIdActivite(),
|
||||
':type' => $newActivite->getType(),
|
||||
':date' => $newActivite->getDate()->format('Y-m-d'), // Format date pour SQL
|
||||
':heureDebut' => $newActivite->getHeureDebut()->format('H:i:s'), // Format heure pour SQL
|
||||
':heureDeFin' => $newActivite->getHeureFin()->format('H:i:s'), // Format heure pour SQL
|
||||
':effortRessenti' => $newActivite->getEffortRessenti(),
|
||||
':variabilite' => $newActivite->getVariabilite(),
|
||||
':variance' => $newActivite->getVariance(),
|
||||
':ecartType' => $newActivite->getEcartType(),
|
||||
':moyenne' => $newActivite->getMoyenne(),
|
||||
':maximum' => $newActivite->getMaximum(),
|
||||
':minimum' => $newActivite->getMinimum(),
|
||||
':temperatureMoyenne' => $newActivite->getTemperatureMoyenne(),
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function deleteActivite(int $idActivite) {
|
||||
$query = "DELETE FROM Activite WHERE idActivite = :idActivite";
|
||||
|
||||
$params = [
|
||||
':idActivite' => $idActivite,
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
use Model\Activite;
|
||||
|
||||
class ActiviteMapper {
|
||||
public function map(array $data):ActiviteEntity {
|
||||
$activite = new ActiviteEntity();
|
||||
$activite->setIdActivite($data['idActivite']);
|
||||
$activite->setType($data['type']);
|
||||
$activite->setDate($data['date']);
|
||||
$activite->setHeureDebut($data['heureDebut']);
|
||||
$activite->setHeureFin($data['heureFin']);
|
||||
$activite->setEffortRessenti($data['effortRessenti']);
|
||||
$activite->setVariabilite($data['variabilite']);
|
||||
$activite->setVariance($data['variance']);
|
||||
$activite->setEcartType($data['ecartType']);
|
||||
$activite->setMoyenne($data['moyenne']);
|
||||
$activite->setMaximum($data['maximum']);
|
||||
$activite->setMinimum($data['minimum']);
|
||||
$activite->setTemperatureMoyenne($data['temperatureMoyenne']);
|
||||
|
||||
return $activite;
|
||||
}
|
||||
|
||||
//public function ActiviteEntityToModel(ActiviteEntity entity): Activite;
|
||||
|
||||
public function ActiviteEntityToModel(ActiviteEntity $activiteEntity):Activite{
|
||||
|
||||
$act = new Activite(
|
||||
$activiteEntity->getIdActivite(),
|
||||
$activiteEntity->getType(),
|
||||
$activiteEntity->getDate(),
|
||||
$activiteEntity->getHeureDebut(),
|
||||
$activiteEntity->getHeureFin(),
|
||||
$activiteEntity->getEffortRessenti(),
|
||||
$activiteEntity->getVariabilite(),
|
||||
$activiteEntity->getVariance(),
|
||||
$activiteEntity->getEcartType(),
|
||||
$activiteEntity->getMoyenne(),
|
||||
$activiteEntity->getMaximum(),
|
||||
$activiteEntity->getMinimum(),
|
||||
$activiteEntity->getTemperatureMoyenne()
|
||||
);
|
||||
|
||||
return $act;
|
||||
}
|
||||
//public function ActiviteToEntity(Activite model): ActiviteEntity;
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
|
||||
class AthleteEntity {
|
||||
private $idAthlete;
|
||||
private $nom;
|
||||
private $prenom;
|
||||
private $email;
|
||||
private $sexe;
|
||||
private $taille;
|
||||
private $poids;
|
||||
private $motDePasse;
|
||||
private $dateNaissance;
|
||||
|
||||
// Getters
|
||||
public function getIdAthlete() {
|
||||
return $this->idAthlete;
|
||||
}
|
||||
|
||||
public function getNom() {
|
||||
return $this->nom;
|
||||
}
|
||||
|
||||
public function getPrenom() {
|
||||
return $this->prenom;
|
||||
}
|
||||
|
||||
public function getEmail() {
|
||||
return $this->email;
|
||||
}
|
||||
|
||||
public function getSexe() {
|
||||
return $this->sexe;
|
||||
}
|
||||
|
||||
public function getTaille() {
|
||||
return $this->taille;
|
||||
}
|
||||
|
||||
public function getPoids() {
|
||||
return $this->poids;
|
||||
}
|
||||
|
||||
public function getMotDePasse() {
|
||||
return $this->motDePasse;
|
||||
}
|
||||
|
||||
public function getDateNaissance() {
|
||||
return $this->dateNaissance;
|
||||
}
|
||||
|
||||
// Setters
|
||||
public function setIdAthlete($idAthlete) {
|
||||
$this->idAthlete = $idAthlete;
|
||||
}
|
||||
|
||||
public function setNom($nom) {
|
||||
$this->nom = $nom;
|
||||
}
|
||||
|
||||
public function setPrenom($prenom) {
|
||||
$this->prenom = $prenom;
|
||||
}
|
||||
|
||||
public function setEmail($email) {
|
||||
$this->email = $email;
|
||||
}
|
||||
|
||||
public function setSexe($sexe) {
|
||||
$this->sexe = $sexe;
|
||||
}
|
||||
|
||||
public function setTaille($taille) {
|
||||
$this->taille = $taille;
|
||||
}
|
||||
|
||||
public function setPoids($poids) {
|
||||
$this->poids = $poids;
|
||||
}
|
||||
|
||||
public function setMotDePasse($motDePasse) {
|
||||
$this->motDePasse = $motDePasse;
|
||||
}
|
||||
|
||||
public function setDateNaissance($dateNaissance) {
|
||||
$this->dateNaissance = $dateNaissance;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,131 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
use \PDO;
|
||||
|
||||
class AthleteGateway {
|
||||
private $connection;
|
||||
|
||||
public function __construct(Connexion $connection) {
|
||||
$this->connection = $connection;
|
||||
}
|
||||
|
||||
public function getAthlete() {
|
||||
$query = "SELECT * FROM Athlete";
|
||||
return $this->connection->executeWithErrorHandling($query);
|
||||
}
|
||||
|
||||
public function getAthleteById(int $userId) {
|
||||
$query = "SELECT * FROM Athlete WHERE idAthlete = :id";
|
||||
$params = [':id' => [$userId, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByName(string $name) {
|
||||
$query = "SELECT * FROM Athlete WHERE nom = :name";
|
||||
$params = [':name' => [$name, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByFirstName(string $firstName) {
|
||||
$query = "SELECT * FROM Athlete WHERE prenom = :firstName";
|
||||
$params = [':firstName' => [$firstName, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByEmail(string $email) {
|
||||
$query = "SELECT * FROM Athlete WHERE email = :email";
|
||||
$params = [':email' => [$email, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByGender(string $gender) {
|
||||
$query = "SELECT * FROM Athlete WHERE sexe = :gender";
|
||||
$params = [':gender' => [$gender, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByHeight(int $height) {
|
||||
$query = "SELECT * FROM Athlete WHERE taille = :height";
|
||||
$params = [':height' => [$height, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByWeight(int $weight) {
|
||||
$query = "SELECT * FROM Athlete WHERE poids = :weight";
|
||||
$params = [':weight' => [$weight, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getAthleteByBirthDate(string $birthdate) {
|
||||
$query = "SELECT * FROM Athlete WHERE dateNaissance = :birthdate";
|
||||
$params = [':birthdate' => [$birthdate, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function addAthlete(AthleteEntity $athlete) {
|
||||
$query = "INSERT INTO Athlete (nom, prenom, email, sexe, taille, poids, motDePasse, dateNaissance)
|
||||
VALUES (:nom, :prenom, :email, :sexe, :taille, :poids, :motDePasse, :dateNaissance)";
|
||||
|
||||
$params = [
|
||||
':nom' => $athlete->getNom(),
|
||||
':prenom' => $athlete->getPrenom(),
|
||||
':email' => $athlete->getEmail(),
|
||||
':sexe' => $athlete->getSexe(),
|
||||
':taille' => $athlete->getTaille(),
|
||||
':poids' => $athlete->getPoids(),
|
||||
':motDePasse' => $athlete->getMotDePasse(),
|
||||
':dateNaissance' => $athlete->getDateNaissance(),
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function updateAthlete(AthleteEntity $oldAthlete, AthleteEntity $newAthlete) {
|
||||
$query = "UPDATE Athlete
|
||||
SET nom = :nom, prenom = :prenom, email = :email, sexe = :sexe,
|
||||
taille = :taille, poids = :poids, motDePasse = :motDePasse, dateNaissance = :dateNaissance
|
||||
WHERE idAthlete = :idAthlete";
|
||||
|
||||
$params = [
|
||||
':idAthlete' => $oldAthlete->getIdAthlete(),
|
||||
':nom' => $newAthlete->getNom(),
|
||||
':prenom' => $newAthlete->getPrenom(),
|
||||
':email' => $newAthlete->getEmail(),
|
||||
':sexe' => $newAthlete->getSexe(),
|
||||
':taille' => $newAthlete->getTaille(),
|
||||
':poids' => $newAthlete->getPoids(),
|
||||
':motDePasse' => $newAthlete->getMotDePasse(),
|
||||
':dateNaissance' => $newAthlete->getDateNaissance(),
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function deleteAthlete(int $idAthlete) {
|
||||
$query = "DELETE FROM Athlete WHERE idAthlete = :idAthlete";
|
||||
|
||||
$params = [
|
||||
':idAthlete' => $idAthlete,
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Exemple d'utilisation
|
||||
//$dsn = "pgsql:host=localhost;port=5432;dbname=mydatabase;user=myuser;password=mypassword";
|
||||
//$connection = new Connection($dsn);
|
||||
//$gateway = new AthleteGateway($connection);
|
||||
|
||||
//$allAth = $gateway->getAthlete();
|
||||
//print_r($allAth);
|
||||
|
||||
//$singleAth = $gateway->getAthleteById(1);
|
||||
//print_r($singleAth);
|
||||
|
||||
?>
|
@ -0,0 +1,99 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
use Model\User;
|
||||
use \PDO;
|
||||
use \DateTime;
|
||||
use Model\Role;
|
||||
use Model\Athlete;
|
||||
|
||||
class AthleteMapper {
|
||||
public function fromSqlToEntity(array $data): array {
|
||||
$athleteEntities = [];
|
||||
|
||||
foreach ($data as $athleteData) {
|
||||
$athlete = new AthleteEntity();
|
||||
|
||||
if (isset($athleteData['idAthlete'])) {
|
||||
$athlete->setIdAthlete($athleteData['idAthlete']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['nom'])) {
|
||||
$athlete->setNom($athleteData['nom']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['prenom'])) {
|
||||
$athlete->setPrenom($athleteData['prenom']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['email'])) {
|
||||
$athlete->setEmail($athleteData['email']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['sexe'])) {
|
||||
$athlete->setSexe($athleteData['sexe']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['taille'])) {
|
||||
$athlete->setTaille($athleteData['taille']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['poids'])) {
|
||||
$athlete->setPoids($athleteData['poids']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['motDePasse'])) {
|
||||
$athlete->setMotDePasse($athleteData['motDePasse']);
|
||||
}
|
||||
|
||||
if (isset($athleteData['dateNaissance'])) {
|
||||
$athlete->setDateNaissance($athleteData['dateNaissance']);
|
||||
}
|
||||
|
||||
$athleteEntities[] = $athlete;
|
||||
}
|
||||
|
||||
return $athleteEntities;
|
||||
}
|
||||
|
||||
public function athleteEntityToModel(AthleteEntity $athleteEntity): User {
|
||||
$role = new Athlete(); // Utilisez la classe Athlete
|
||||
|
||||
$dateSpecifique = $athleteEntity->getDateNaissance();
|
||||
$date = new DateTime($dateSpecifique);
|
||||
|
||||
$user = new User(
|
||||
$athleteEntity->getIdAthlete(),
|
||||
$athleteEntity->getNom(),
|
||||
$athleteEntity->getPrenom(),
|
||||
$athleteEntity->getEmail(),
|
||||
$athleteEntity->getMotDePasse(),
|
||||
$athleteEntity->getSexe(),
|
||||
$athleteEntity->getTaille(),
|
||||
$athleteEntity->getPoids(),
|
||||
$date,
|
||||
$role
|
||||
);
|
||||
|
||||
return $user;
|
||||
}
|
||||
|
||||
public function athleteToEntity(User $user):AthleteEntity{
|
||||
|
||||
$ath = new AthleteEntity();
|
||||
$ath->setIdAthlete($user->getId());
|
||||
$ath->setNom($user->getNom());
|
||||
$ath->setPrenom($user->getPrenom());
|
||||
$ath->setEmail($user->getEmail());
|
||||
$ath->setSexe($user->getSexe());
|
||||
$ath->setTaille($user->getTaille());
|
||||
$ath->setPoids($user->getPoids());
|
||||
$ath->setMotDePasse($user->getMotDePasse());
|
||||
$ath->setDateNaissance($user->getDateNaissance());
|
||||
|
||||
return $ath;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
|
||||
class CoachEntity {
|
||||
private $idCoach;
|
||||
private $nom;
|
||||
private $prenom;
|
||||
private $email;
|
||||
private $sexe;
|
||||
private $taille;
|
||||
private $poids;
|
||||
private $motDePasse;
|
||||
private $dateNaissance;
|
||||
|
||||
// Getters
|
||||
public function getIdCoach() {
|
||||
return $this->idCoach;
|
||||
}
|
||||
|
||||
public function getNom() {
|
||||
return $this->nom;
|
||||
}
|
||||
|
||||
public function getPrenom() {
|
||||
return $this->prenom;
|
||||
}
|
||||
|
||||
public function getEmail() {
|
||||
return $this->email;
|
||||
}
|
||||
|
||||
public function getSexe() {
|
||||
return $this->sexe;
|
||||
}
|
||||
|
||||
public function getTaille() {
|
||||
return $this->taille;
|
||||
}
|
||||
|
||||
public function getPoids() {
|
||||
return $this->poids;
|
||||
}
|
||||
|
||||
public function getMotDePasse() {
|
||||
return $this->motDePasse;
|
||||
}
|
||||
|
||||
public function getDateNaissance() {
|
||||
return $this->dateNaissance;
|
||||
}
|
||||
|
||||
// Setters
|
||||
public function setIdCoach($idCoach) {
|
||||
$this->idCoach = $idCoach;
|
||||
}
|
||||
|
||||
public function setNom($nom) {
|
||||
$this->nom = $nom;
|
||||
}
|
||||
|
||||
public function setPrenom($prenom) {
|
||||
$this->prenom = $prenom;
|
||||
}
|
||||
|
||||
public function setEmail($email) {
|
||||
$this->email = $email;
|
||||
}
|
||||
|
||||
public function setSexe($sexe) {
|
||||
$this->sexe = $sexe;
|
||||
}
|
||||
|
||||
public function setTaille($taille) {
|
||||
$this->taille = $taille;
|
||||
}
|
||||
|
||||
public function setPoids($poids) {
|
||||
$this->poids = $poids;
|
||||
}
|
||||
|
||||
public function setMotDePasse($motDePasse) {
|
||||
$this->motDePasse = $motDePasse;
|
||||
}
|
||||
|
||||
public function setDateNaissance($dateNaissance) {
|
||||
$this->dateNaissance = $dateNaissance;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,109 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
use \PDO;
|
||||
|
||||
class CoachGateway {
|
||||
private $connection;
|
||||
|
||||
public function __construct(Connexion $connection) {
|
||||
$this->connection = $connection;
|
||||
}
|
||||
|
||||
public function getCoach() {
|
||||
$query = "SELECT * FROM Coach";
|
||||
return $this->connection->executeWithErrorHandling($query);
|
||||
}
|
||||
|
||||
public function getCoachById(int $userId) {
|
||||
$query = "SELECT * FROM Coach WHERE idCoach = :id";
|
||||
$params = [':id' => [$userId, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getCoachByName(string $name) {
|
||||
$query = "SELECT * FROM Coach WHERE nom = :name";
|
||||
$params = [':name' => [$name, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getCoachByFirstName(string $firstName) {
|
||||
$query = "SELECT * FROM Coach WHERE prenom = :firstName";
|
||||
$params = [':firstName' => [$firstName, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getCoachByEmail(string $email) {
|
||||
$query = "SELECT * FROM Coach WHERE email = :email";
|
||||
$params = [':email' => [$email, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getCoachByGender(string $gender) {
|
||||
$query = "SELECT * FROM Coach WHERE sexe = :gender";
|
||||
$params = [':gender' => [$gender, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getCoachByHeight(int $height) {
|
||||
$query = "SELECT * FROM Coach WHERE taille = :height";
|
||||
$params = [':height' => [$height, PDO::PARAM_INT]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function getCoachByBirthDate(string $birthdate) {
|
||||
$query = "SELECT * FROM Coach WHERE dateNaissance = :birthdate";
|
||||
$params = [':birthdate' => [$birthdate, PDO::PARAM_STR]];
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function addCoach(CoachEntity $coach) {
|
||||
$query = "INSERT INTO Coach (nom, prenom, email, sexe, taille, poids, motDePasse, dateNaissance)
|
||||
VALUES (:nom, :prenom, :email, :sexe, :taille, :poids, :motDePasse, :dateNaissance)";
|
||||
|
||||
$params = [
|
||||
':nom' => $coach->getNom(),
|
||||
':prenom' => $coach->getPrenom(),
|
||||
':email' => $coach->getEmail(),
|
||||
':sexe' => $coach->getSexe(),
|
||||
':taille' => $coach->getTaille(),
|
||||
':poids' => $coach->getPoids(),
|
||||
':motDePasse' => $coach->getMotDePasse(),
|
||||
':dateNaissance' => $coach->getDateNaissance(),
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function updateCoach(CoachEntity $oldCoach, CoachEntity $newCoach) {
|
||||
$query = "UPDATE Coach
|
||||
SET nom = :nom, prenom = :prenom, email = :email, sexe = :sexe,
|
||||
taille = :taille, poids = :poids, motDePasse = :motDePasse, dateNaissance = :dateNaissance
|
||||
WHERE idCoach = :idCoach";
|
||||
|
||||
$params = [
|
||||
':idCoach' => $oldCoach->getIdCoach(),
|
||||
':nom' => $newCoach->getNom(),
|
||||
':prenom' => $newCoach->getPrenom(),
|
||||
':email' => $newCoach->getEmail(),
|
||||
':sexe' => $newCoach->getSexe(),
|
||||
':taille' => $newCoach->getTaille(),
|
||||
':poids' => $newCoach->getPoids(),
|
||||
':motDePasse' => $newCoach->getMotDePasse(),
|
||||
':dateNaissance' => $newCoach->getDateNaissance(),
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
public function deleteCoach(int $idCoach) {
|
||||
$query = "DELETE FROM Coach WHERE idCoach = :idCoach";
|
||||
|
||||
$params = [
|
||||
':idCoach' => $idCoach,
|
||||
];
|
||||
|
||||
return $this->connection->executeWithErrorHandling($query, $params);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,62 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
use Model\User;
|
||||
use \PDO;
|
||||
use \DateTime;
|
||||
use Model\Role;
|
||||
use Model\Coach;
|
||||
|
||||
class CoachMapper {
|
||||
public function map(array $data) {
|
||||
$coach = new CoachEntity();
|
||||
$coach->setIdCoach($data['idCoach']);
|
||||
$coach->setNom($data['nom']);
|
||||
$coach->setPrenom($data['prenom']);
|
||||
$coach->setEmail($data['email']);
|
||||
$coach->setSexe($data['sexe']);
|
||||
$coach->setTaille($data['taille']);
|
||||
$coach->setPoids($data['poids']);
|
||||
$coach->setMotDePasse($data['motDePasse']);
|
||||
$coach->setDateNaissance($data['dateNaissance']);
|
||||
|
||||
return $coach;
|
||||
}
|
||||
|
||||
public function CoachEntityToModel(CoachEntity $coachEntity):User{
|
||||
$role = "Coach";
|
||||
|
||||
$user = new User(
|
||||
$coachEntity->getIdCoach(),
|
||||
$coachEntity->getNom(),
|
||||
$coachEntity->getPrenom(),
|
||||
$coachEntity->getEmail(),
|
||||
$coachEntity->getMotDePasse(),
|
||||
$coachEntity->getSexe(),
|
||||
$coachEntity->getTaille(),
|
||||
$coachEntity->getPoids(),
|
||||
$coachEntity->getDateNaissance(),
|
||||
$role
|
||||
);
|
||||
|
||||
return $user;
|
||||
}
|
||||
|
||||
public function CoachToEntity(User $user):CoachEntity{
|
||||
|
||||
$coach = new CoachEntity();
|
||||
$coach->setIdCoach($user->getId());
|
||||
$coach->setNom($user->getNom());
|
||||
$coach->setPrenom($user->getPrenom());
|
||||
$coach->setEmail($user->getEmail());
|
||||
$coach->setSexe($user->getSexe());
|
||||
$coach->setTaille($user->getTaille());
|
||||
$coach->setPoids($user->getPoids());
|
||||
$coach->setMotDePasse($user->getMotDePasse());
|
||||
$coach->setDateNaissance($user->getDateNaissance());
|
||||
|
||||
return $coach;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
namespace Database;
|
||||
|
||||
class Connexion extends \PDO {
|
||||
private $stmt;
|
||||
|
||||
public function __construct(string $dsn,string $username, string $password) {
|
||||
try {
|
||||
parent::__construct($dsn,$username,$password);
|
||||
$this->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
|
||||
} catch (\PDOException $e) {
|
||||
// Log error or handle it as needed
|
||||
throw new \PDOException("Error connecting to the database: " . $e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
public function executeQuery(string $query, array $parameters = []): bool {
|
||||
$this->stmt = $this->prepare($query);
|
||||
//foreach ($parameters as $name => $value) {
|
||||
// $this->stmt->bindValue($name, $value[0], $value[1]);
|
||||
//}
|
||||
foreach ($parameters as $name => $value) {
|
||||
$bindValueResult = $this->stmt->bindValue($name, $value, \PDO::PARAM_STR);
|
||||
if (!$bindValueResult) {
|
||||
// Gérez l'erreur, par exemple, en lançant une exception.
|
||||
throw new \PDOException('Failed to bind value for parameter ' . $name);
|
||||
}
|
||||
}
|
||||
return $this->stmt->execute();
|
||||
}
|
||||
|
||||
public function executeWithErrorHandling(string $query, array $params = []): array {
|
||||
try {
|
||||
$this->beginTransaction();
|
||||
$this->executeQuery($query, $params);
|
||||
$this->commit();
|
||||
return $this->getResults();
|
||||
} catch (\PDOException $e) {
|
||||
$this->rollBack();
|
||||
throw new \PDOException('Unexpected error on database client: ' . $e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
public function getResults(): array {
|
||||
return $this->stmt->fetchAll(\PDO::FETCH_ASSOC);
|
||||
}
|
||||
}
|
||||
?>
|
@ -1,13 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace DataManager;
|
||||
|
||||
class CoachManager
|
||||
{
|
||||
|
||||
/**
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
}
|
||||
}
|
@ -0,0 +1,220 @@
|
||||
<?php
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
|
||||
//use Database\{Connexion, AthleteGateway,AthleteEntity};
|
||||
use Database\AthleteEntity;
|
||||
use Database\AthleteGateway;
|
||||
use Database\Connexion;
|
||||
use Database\AthleteMapper;
|
||||
use Database\CoachGateway;
|
||||
use Database\CoachEntity;
|
||||
use Database\CoachMapper;
|
||||
|
||||
class GatewayTest extends TestCase {
|
||||
|
||||
//Partie concernant les Athlètes
|
||||
|
||||
public function testGetAthlete() {
|
||||
|
||||
//$dsn = "pgsql:host=londres;port=8888;dbname=dbkemonteiro2;user=kemonteiro2;password=Mdp";
|
||||
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
$result = $athleteGateway->getAthlete();
|
||||
//var_dump($result);
|
||||
}
|
||||
|
||||
/* Fonctionne mais en commentaire pour pas add et del a chaque fois
|
||||
public function testAddAthlete(){
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
|
||||
$dateSpecifique = "2023-11-26";
|
||||
$timestamp = strtotime($dateSpecifique);
|
||||
$dateSQL = date("Y-m-d", $timestamp);
|
||||
|
||||
$athleteEntity = new AthleteEntity();
|
||||
$athleteEntity->setNom('John');
|
||||
$athleteEntity->setPrenom('Doe');
|
||||
$athleteEntity->setIdAthlete(1234);
|
||||
$athleteEntity->setEmail('kevin.monteiro@gmail.fr');
|
||||
$athleteEntity->setSexe('H');
|
||||
$athleteEntity->setTaille(169);
|
||||
$athleteEntity->setPoids(69);
|
||||
$athleteEntity->setMotDePasse('motdepasse');
|
||||
$athleteEntity->setDateNaissance($dateSQL);
|
||||
|
||||
$result2 = $athleteGateway->addAthlete($athleteEntity);
|
||||
}
|
||||
|
||||
|
||||
public function testDeleteAthlete(){
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
$result = $athleteGateway->deleteAthlete( //idAthlete );
|
||||
var_dump($result);
|
||||
|
||||
}*/
|
||||
|
||||
public function testUpdateAthlete(){
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
|
||||
$dateSpecifique = "2004-08-26";
|
||||
$timestamp = strtotime($dateSpecifique);
|
||||
$dateSQL = date("Y-m-d", $timestamp);
|
||||
|
||||
$athleteEntity = new AthleteEntity();
|
||||
$athleteEntity->setNom('John');
|
||||
$athleteEntity->setPrenom('Doe');
|
||||
$athleteEntity->setIdAthlete(13);
|
||||
$athleteEntity->setEmail('kevin.monteiro@gmail.fr');
|
||||
$athleteEntity->setSexe('H');
|
||||
$athleteEntity->setTaille(169);
|
||||
$athleteEntity->setPoids(69);
|
||||
$athleteEntity->setMotDePasse('motdepasse');
|
||||
$athleteEntity->setDateNaissance($dateSQL);
|
||||
|
||||
$athleteEntity2 = new AthleteEntity();
|
||||
$athleteEntity2->setNom('Monteiro');
|
||||
$athleteEntity2->setPrenom('Kevin');
|
||||
$athleteEntity2->setIdAthlete(13);
|
||||
$athleteEntity2->setEmail('kevin.monteiro@gmail.fr');
|
||||
$athleteEntity2->setSexe('H');
|
||||
$athleteEntity2->setTaille(169);
|
||||
$athleteEntity2->setPoids(69);
|
||||
$athleteEntity2->setMotDePasse('motdepasse');
|
||||
$athleteEntity2->setDateNaissance($dateSQL);
|
||||
|
||||
$result = $athleteGateway->updateAthlete($athleteEntity, $athleteEntity2);
|
||||
}
|
||||
|
||||
//Partie concernant les Coachs
|
||||
|
||||
public function testGetCoach() {
|
||||
|
||||
//$dsn = "pgsql:host=londres;port=8888;dbname=dbkemonteiro2;user=kemonteiro2;password=Mdp";
|
||||
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
|
||||
$coachGateway = new CoachGateway($connexion);
|
||||
$result = $coachGateway->getCoach();
|
||||
var_dump($result);
|
||||
}
|
||||
/*
|
||||
//Fonctionne PAS A PARTIR DE LA
|
||||
public function testAddCoach(){
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
|
||||
$coachGateway = new CoachGateway($connexion);
|
||||
|
||||
$dateSpecifique = "2023-11-26";
|
||||
$timestamp = strtotime($dateSpecifique);
|
||||
$dateSQL = date("Y-m-d", $timestamp);
|
||||
|
||||
$coachEntity = new CoachEntity();
|
||||
$coachEntity->setNom('John');
|
||||
$coachEntity->setPrenom('Doe');
|
||||
$coachEntity->setIdCoach(1234);
|
||||
$coachEntity->setEmail('kevin.monteiro@gmail.fr');
|
||||
$coachEntity->setSexe('H');
|
||||
$coachEntity->setTaille(169);
|
||||
$coachEntity->setPoids(69);
|
||||
$coachEntity->setMotDePasse('motdepasse');
|
||||
$coachEntity->setDateNaissance($dateSQL);
|
||||
|
||||
$result2 = $coachGateway->addCoach($coachEntity);
|
||||
}
|
||||
|
||||
|
||||
public function testDeleteAthlete(){
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
$result = $athleteGateway->deleteAthlete( //idAthlete );
|
||||
var_dump($result);
|
||||
|
||||
}*/
|
||||
/*
|
||||
public function testUpdateAthlete(){
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
|
||||
$dateSpecifique = "2004-08-26";
|
||||
$timestamp = strtotime($dateSpecifique);
|
||||
$dateSQL = date("Y-m-d", $timestamp);
|
||||
|
||||
$athleteEntity = new AthleteEntity();
|
||||
$athleteEntity->setNom('John');
|
||||
$athleteEntity->setPrenom('Doe');
|
||||
$athleteEntity->setIdAthlete(13);
|
||||
$athleteEntity->setEmail('kevin.monteiro@gmail.fr');
|
||||
$athleteEntity->setSexe('H');
|
||||
$athleteEntity->setTaille(169);
|
||||
$athleteEntity->setPoids(69);
|
||||
$athleteEntity->setMotDePasse('motdepasse');
|
||||
$athleteEntity->setDateNaissance($dateSQL);
|
||||
|
||||
$athleteEntity2 = new AthleteEntity();
|
||||
$athleteEntity2->setNom('Monteiro');
|
||||
$athleteEntity2->setPrenom('Kevin');
|
||||
$athleteEntity2->setIdAthlete(13);
|
||||
$athleteEntity2->setEmail('kevin.monteiro@gmail.fr');
|
||||
$athleteEntity2->setSexe('H');
|
||||
$athleteEntity2->setTaille(169);
|
||||
$athleteEntity2->setPoids(69);
|
||||
$athleteEntity2->setMotDePasse('motdepasse');
|
||||
$athleteEntity2->setDateNaissance($dateSQL);
|
||||
|
||||
$result = $athleteGateway->updateAthlete($athleteEntity, $athleteEntity2);
|
||||
}*/
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -0,0 +1,43 @@
|
||||
<?php
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
use Model\User;
|
||||
use Database\AthleteEntity;
|
||||
use Database\AthleteGateway;
|
||||
use Database\Connexion;
|
||||
use Database\AthleteMapper;
|
||||
|
||||
class MapperTest extends TestCase {
|
||||
|
||||
public function testMapperAthlete() {
|
||||
|
||||
//$dsn = "pgsql:host=londres;port=8888;dbname=dbkemonteiro2;user=kemonteiro2;password=Mdp";
|
||||
|
||||
$dsn = "mysql:host=londres;dbname=dbkemonteiro2;";
|
||||
$username = "kemonteiro2";
|
||||
$password = "#Phpmyadmin63";
|
||||
|
||||
$connexion = new Connexion($dsn,$username,$password);
|
||||
|
||||
|
||||
$athleteGateway = new AthleteGateway($connexion);
|
||||
$result = $athleteGateway->getAthlete();
|
||||
|
||||
$map = new AthleteMapper ();
|
||||
//SQL To AthleteEntity
|
||||
$athleteEntity = $map->fromSqlToEntity($result);
|
||||
|
||||
|
||||
foreach($athleteEntity as $ath){
|
||||
|
||||
$result = $ath->getNom();
|
||||
var_dump($result);
|
||||
//Pour chaque AthleteEntity : Athlete Entity To User avec Role Athlete(Model)
|
||||
$user = $map->athleteEntityToModel($ath);
|
||||
var_dump($user->getId());
|
||||
//Pour chaque Athlete du Model -> Athlete Entity
|
||||
$res = $map->athleteToEntity($user);
|
||||
var_dump($res->getIdAthlete());
|
||||
}
|
||||
}
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
<?php
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class MaClasseTest extends TestCase
|
||||
{
|
||||
public function testMethode()
|
||||
{
|
||||
echo "TEST MEC";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -0,0 +1 @@
|
||||
{"version":1,"defects":[],"times":{"ExampleTest::testAddition":0.037}}
|
Loading…
Reference in new issue