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 OrmModels * @group TeamOrm */ public function testTeamOrm() { $rndFiller = new \App\Lib\DsManager\Helpers\RandomFiller(); $team = $rndFiller->getTeam($rndFiller->getLocale()); $teamArray = $team->toArray(); $this->assertNotEmpty($team); $teamO = \App\Lib\DsManager\Models\Orm\Team::create($teamArray); $this->assertNotEmpty($teamArray); $this->assertNotEmpty($teamArray['roster']); foreach ($teamArray['roster'] as $player) { $player['team_id'] = $teamO->id; $playerO = \App\Lib\DsManager\Models\Orm\Player::create($player); $this->assertNotEmpty($playerO); } $teamArray['coach']['team_id'] = $teamO->id; $coachO = \App\Lib\DsManager\Models\Orm\Coach::create($teamArray['coach']); $this->assertNotEmpty($coachO); $this->assertNotEmpty(\App\Lib\DsManager\Models\Orm\Team::with('roster')->with('coach')->where(['id' => $teamO->id])->get()->toArray()); }
use App\Lib\Helpers\Responder; use App\Lib\DsManager\Models\Orm\Player; use App\Lib\DsManager\Models\Orm\Team; use App\Lib\DsManager\Models\Orm\Coach; $configuration = ['settings' => ['displayErrorDetails' => true]]; $c = new \Slim\Container($configuration); $api = new \Slim\App($c); $api->get('/ping', function ($request, $response, $args) { $jsonResp = json_encode(["status" => "service up", "message" => "in a bottle"]); return Responder::getJsonResponse($jsonResp, $response); }); $api->get('/statistics', function ($request, $response, $args) { 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);