/** * @param Player $player * * @return boolean */ public function hasFinished(Player $player) { if ($this->useYard($player)->count() > 0) { return false; } foreach ($this->track->tokensFor($player) as $token) { if (!$token->isFinished()) { return false; } } return true; }
/** @test */ public function givenTwoTokensOnTrack_TwoTokensAreReturned() { $this->track->add($this->tokenOne); $this->track->add($this->tokenTwo); $this->assertEquals(2, count($this->track->tokensFor(Player::$GREEN))); }