/** * Handling of player loses * * @param Player $player */ protected function losePlayer(Player $player) { $this->losePlayers[] = $player; $playerKey = array_search($player, $this->players, true); unset($this->players[$playerKey]); $this->gameTable->unsetPlayer($player); }
public function testUnsetPlayer() { $players = TestDataProvider::getPlayersArray(); $firstPlayer = reset($players); $gameTable = new GameTable($players); $this->assertInstanceOf(CardCollection::class, $gameTable->getPlayerCards($firstPlayer)); $gameTable->unsetPlayer($firstPlayer); $expectedException = GameTableException::noPlayer($firstPlayer); $this->expectException(get_class($expectedException)); $this->expectExceptionMessage($expectedException->getMessage()); $this->assertInstanceOf(CardCollection::class, $gameTable->getPlayerCards($firstPlayer)); }