public function testCreateSilexApplication()
 {
     $logger = new \Psr\Log\NullLogger();
     $silex = new Silex\Application(array('debug' => true, 'logger' => $logger));
     $silex->register(new \PHPExtra\Proxy\Provider\Silex\ProxyServiceProvider(), array('logger' => $logger, 'proxy.storage' => new \PHPExtra\Proxy\Storage\InMemoryStorage(), 'proxy.adapter.name' => 'dummy', 'proxy.adapter.dummy.handler' => $silex->protect(function (\PHPExtra\Proxy\Http\RequestInterface $request) {
         return new \PHPExtra\Proxy\Http\Response('I see ' . $request->getRequestUri());
     }), 'proxy.logger.access_log' => $logger));
     $silex->register(new \PHPExtra\EventManager\Silex\EventManagerServiceProvider());
     $silex->boot();
     $request = \Symfony\Component\HttpFoundation\Request::create('http://test.com/ping');
     $response = $silex->handle($request);
     $silex->terminate($request, $response);
     $this->assertEquals('I see /ping', $response->getContent());
     $this->assertEquals(200, $response->getStatusCode());
 }
Beispiel #2
0
<?php

require __DIR__ . '/../vendor/autoload.php';
use G\HttpServer\Builder;
use Symfony\Component\HttpFoundation\Request;
$app = new Silex\Application();
$app->get('/', function () {
    return 'Hello';
});
$app->get('/hello/{name}', function ($name) {
    return 'Hello ' . $name;
});
Builder::createReactServer(function (Request $request) use($app) {
    return $app->handle($request);
})->listen(1337);