getNomJoueurActif() . "\n"; echo "Game status: " . $partie->gameStatus . "\n\n"; } /** * Teste l'ajout d'un deuxième joueur. */ public function testAjoutJoueur() { $joueur1 = new JoueurSquadro("Alice", 1); $joueur2 = new JoueurSquadro("Bob", 2); $partie = new PartieSquadro($joueur1); $partie->addJoueur($joueur2); echo "Test ajout joueur: \n"; echo "Joueurs dans la partie: \n"; foreach ($partie->getJoueurs() as $joueur) { echo "- " . $joueur->getNomJoueur() . "\n"; } echo "Game status après ajout: " . $partie->gameStatus . "\n\n"; } /** * Teste la récupération du joueur actif. */ public function testGetJoueurActif() { $joueur1 = new JoueurSquadro("Alice", 1); $partie = new PartieSquadro($joueur1); echo "Test récupération joueur actif: \n"; echo "Joueur actif: " . $partie->getJoueurActif()->getNomJoueur() . "\n\n"; } /** * Teste la conversion en JSON. */ public function testToJson() { $joueur1 = new JoueurSquadro("Alice", 1); $joueur2 = new JoueurSquadro("Bob", 2); $partie = new PartieSquadro($joueur1); $partie->addJoueur($joueur2); $json = $partie->toJson(); echo "Test toJson: \n"; echo "JSON généré: $json\n\n"; } /** * Teste la reconstruction d'une partie à partir d'un JSON. */ public function testFromJson() { $json = '{ "partieId": 10, "joueurs": { "0": "Alice", "1": "Bob" }, "joueurActif": 0, "gameStatus": "waitingForPlayer", "plateau": "{}" }'; $joueur1 = new JoueurSquadro("Alice", 1); $joueur2 = new JoueurSquadro("Bob", 2); $joueurs = [ PartieSquadro::PLAYER_ONE => $joueur1, PartieSquadro::PLAYER_TWO => $joueur2 ]; $partie = PartieSquadro::fromJson($json, $joueurs); echo "Test fromJson: \n"; echo "ID de la partie: " . $partie->getPartieID() . "\n"; echo "Joueur actif: " . $partie->getNomJoueurActif() . "\n"; echo "Game status: " . $partie->gameStatus . "\n\n"; } } // Exécution des tests $test = new TestPartieSquadro(); $test->testCreationPartie(); $test->testAjoutJoueur(); $test->testGetJoueurActif(); $test->testToJson(); $test->testFromJson(); ?>