public function run_ValidPathWithDependencies_ReturnsResponse() { // arrange $app = new App(self::VALID_APP_NAME); $app->factory(self::VALID_DEPENDENCY_NAME, $this->VALID_DEPENDENCY_DEPENDENCIES, $this->VALID_DEPENDENCY_FACTORY); $app->get(self::VALID_ENDPOINT_PATH, $this->VALID_ENDPOINT_WITH_DEPENDENCIES_DEPENDENCIES, $this->VALID_ENDPOINT_WITH_DEPENDENCIES_HANDLER); $request = new Request('HTTP/1.1', 'GET', '/valid/endpoint'); $response = new Response('HTTP/1.1'); // act $app->run($request, $response); // assert }
<?php require '../../bower_components/Dephendency/index.php'; use Phale\App; use Phale\Request; use Phale\Response; use PhaleDemo\Database; require_once '../../user/api.php'; $app = new App('demo', '/PhaleDemo/api/v1.0'); $app->factory('config', [], function () { return json_decode(file_get_contents('../../config.json')); }); $app->factory('database', ['config'], function (stdClass $config) { return new Database($config->db->host, $config->db->username, $config->db->password, $config->db->database, $config->db->port, $config->db->charset); }); $app->get('/', [], function (Request $request, Response $response) { }); $app->module('/user', $users); $request = Request::fromHttp($_SERVER); $response = Response::fromHttp(); $app->run($request, $response); $response->respond();