blob: 166acfb6b6e8f4584af13e0e823ef34eb757d89e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
<?php
use Spiral\Goridge;
use Spiral\RoadRunner;
ini_set('display_errors', 'stderr');
require dirname(__DIR__) . "/../vendor/autoload.php";
if (count($argv) < 3) {
die("need 2 arguments");
}
list($test, $goridge) = [$argv[1], $argv[2]];
switch ($goridge) {
case "pipes":
$relay = new Goridge\StreamRelay(STDIN, STDOUT);
break;
case "tcp":
$relay = new Goridge\SocketRelay("localhost", 9007);
break;
case "unix":
$relay = new Goridge\SocketRelay(
"sock.unix",
null,
Goridge\SocketRelay::SOCK_UNIX
);
break;
default:
die("invalid protocol selection");
}
$psr7 = new RoadRunner\PSR7Client(new RoadRunner\Worker($relay));
require_once sprintf("%s/%s.php", __DIR__, $test);
while ($req = $psr7->acceptRequest()) {
try {
$psr7->respond(handleRequest($req, new \Zend\Diactoros\Response()));
} catch (\Throwable $e) {
$psr7->getWorker()->error((string)$e);
}
}
|