private static function generateAppearances($teamIds, $matchId) { foreach ($teamIds as $id) { $players = Player::where('team_id', $id)->get()->random(11); foreach ($players as $player) { MatchPlayer::create(['match_id' => $matchId, 'team_id' => $id, 'player_id' => $player->id, 'vote' => Randomizer::voteFromSkill($player->skillAvg)]); } } }
function run() { $teamNumber = 16; $rndFiller = new \App\Lib\DsManager\Helpers\RandomFiller(); for ($i = 1; $i <= $teamNumber; $i++) { $team = $rndFiller->getTeam($rndFiller->getLocale()); $teamArray = $team->toArray(); $teamO = \App\Lib\DsManager\Models\Orm\Team::create($teamArray); foreach ($teamArray['roster'] as $player) { $player['team_id'] = $teamO->id; \App\Lib\DsManager\Models\Orm\Player::create($player); } $teamArray['coach']['team_id'] = $teamO->id; \App\Lib\DsManager\Models\Orm\Coach::create($teamArray['coach']); } }
/** * @group Stats */ public function testGetStats() { $match = \App\Lib\DsManager\Models\Orm\Match::where(['simulated' => false])->whereNotNull('league_round_id')->get()->random(1); $this->assertNotEmpty($match); $result = \App\Lib\DsManager\Helpers\MatchSimulator::simulateRound($match->league_round_id); $this->assertNotEmpty($result); $players = \App\Lib\DsManager\Models\Orm\Player::getBest(); $this->assertNotEmpty($players); $teams = \App\Lib\DsManager\Models\Orm\Team::getBest(); $this->assertNotEmpty($teams); }
return Responder::getJsonResponse(json_encode(['players' => Player::getBest(), 'teams' => Team::getBest()], JSON_NUMERIC_CHECK), $response); }); $api->get('/coaches', function ($request, $response, $args) { return Responder::getJsonResponse(Coach::all(), $response); }); $api->get('/teams', function ($request, $response, $args) { return Responder::getJsonResponse(Team::all(), $response); }); $api->get('/teams/{id}', function ($request, $response, $args) { return Responder::getJsonResponse(Team::complete()->where(['id' => $args['id']])->get(), $response); }); $api->get('/teams/{id}/players', function ($request, $response, $args) { return Responder::getJsonResponse(Team::with('roster')->where(['id' => $args['id']])->get(), $response); }); $api->get('/teams/{id}/players/{playerId}', function ($request, $response, $args) { return Responder::getJsonResponse(Player::statistics()->where(['id' => $args['playerId'], 'team_id' => $args['id']])->get(), $response); }); $api->get('/teams/{id}/coach', function ($request, $response, $args) { return Responder::getJsonResponse(Team::with('coach')->where(['id' => $args['id']])->get(), $response); }); $api->get('/leagues', function ($request, $response, $args) { return Responder::getJsonResponse(League::all(), $response); }); $api->get('/leagues/{id}', function ($request, $response, $args) { return Responder::getJsonResponse(League::with('rounds')->where(['id' => $args['id']])->first(), $response); }); $api->get('/leagues/{id}/rounds/{roundId}', function ($request, $response, $args) { return Responder::getJsonResponse(LeagueRound::complete()->where(['id' => $args['roundId']])->first(), $response); }); $api->put('/leagues/{id}/rounds/{roundId}/simulate', function ($request, $response, $args) { return Responder::getJsonResponse(MatchSimulator::simulateRound($args['roundId']), $response);