aboutsummaryrefslogtreecommitdiffhomepage
path: root/assets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php
diff options
context:
space:
mode:
authormarvin-borner@live.com2018-04-16 21:09:05 +0200
committermarvin-borner@live.com2018-04-16 21:09:05 +0200
commitcf14306c2b3f82a81f8d56669a71633b4d4b5fce (patch)
tree86700651aa180026e89a66064b0364b1e4346f3f /assets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php
parent619b01b3615458c4ed78bfaeabb6b1a47cc8ad8b (diff)
Main merge to user management system - files are now at /main/public/
Diffstat (limited to 'assets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php')
-rwxr-xr-xassets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php228
1 files changed, 0 insertions, 228 deletions
diff --git a/assets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php b/assets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php
deleted file mode 100755
index 0c5578a..0000000
--- a/assets/php/vendor/ratchet/rfc6455/tests/ab/clientRunner.php
+++ /dev/null
@@ -1,228 +0,0 @@
-<?php
-use GuzzleHttp\Psr7\Uri;
-use React\Promise\Deferred;
-use Ratchet\RFC6455\Messaging\Frame;
-
-require __DIR__ . '/../bootstrap.php';
-
-define('AGENT', 'RatchetRFC/0.0.0');
-
-$testServer = "127.0.0.1";
-
-$loop = React\EventLoop\Factory::create();
-
-$dnsResolverFactory = new React\Dns\Resolver\Factory();
-$dnsResolver = $dnsResolverFactory->createCached('8.8.8.8', $loop);
-
-$factory = new \React\SocketClient\Connector($loop, $dnsResolver);
-
-function echoStreamerFactory($conn)
-{
- return new \Ratchet\RFC6455\Messaging\MessageBuffer(
- new \Ratchet\RFC6455\Messaging\CloseFrameChecker,
- function (\Ratchet\RFC6455\Messaging\MessageInterface $msg) use ($conn) {
- /** @var Frame $frame */
- foreach ($msg as $frame) {
- $frame->maskPayload();
- }
- $conn->write($msg->getContents());
- },
- function (\Ratchet\RFC6455\Messaging\FrameInterface $frame) use ($conn) {
- switch ($frame->getOpcode()) {
- case Frame::OP_PING:
- return $conn->write((new Frame($frame->getPayload(), true, Frame::OP_PONG))->maskPayload()->getContents());
- break;
- case Frame::OP_CLOSE:
- return $conn->end((new Frame($frame->getPayload(), true, Frame::OP_CLOSE))->maskPayload()->getContents());
- break;
- }
- },
- false
- );
-}
-
-function getTestCases() {
- global $factory;
- global $testServer;
-
- $deferred = new Deferred();
-
- $factory->create($testServer, 9001)->then(function (\React\Stream\Stream $stream) use ($deferred) {
- $cn = new \Ratchet\RFC6455\Handshake\ClientNegotiator();
- $cnRequest = $cn->generateRequest(new Uri('ws://127.0.0.1:9001/getCaseCount'));
-
- $rawResponse = "";
- $response = null;
-
- /** @var \Ratchet\RFC6455\Messaging\Streaming\MessageBuffer $ms */
- $ms = null;
-
- $stream->on('data', function ($data) use ($stream, &$rawResponse, &$response, &$ms, $cn, $deferred, &$context, $cnRequest) {
- if ($response === null) {
- $rawResponse .= $data;
- $pos = strpos($rawResponse, "\r\n\r\n");
- if ($pos) {
- $data = substr($rawResponse, $pos + 4);
- $rawResponse = substr($rawResponse, 0, $pos + 4);
- $response = \GuzzleHttp\Psr7\parse_response($rawResponse);
-
- if (!$cn->validateResponse($cnRequest, $response)) {
- $stream->end();
- $deferred->reject();
- } else {
- $ms = new \Ratchet\RFC6455\Messaging\MessageBuffer(
- new \Ratchet\RFC6455\Messaging\CloseFrameChecker,
- function (\Ratchet\RFC6455\Messaging\MessageInterface $msg) use ($deferred, $stream) {
- $deferred->resolve($msg->getPayload());
- $stream->close();
- },
- null,
- false
- );
- }
- }
- }
-
- // feed the message streamer
- if ($ms) {
- $ms->onData($data);
- }
- });
-
- $stream->write(\GuzzleHttp\Psr7\str($cnRequest));
- });
-
- return $deferred->promise();
-}
-
-function runTest($case)
-{
- global $factory;
- global $testServer;
-
- $casePath = "/runCase?case={$case}&agent=" . AGENT;
-
- $deferred = new Deferred();
-
- $factory->create($testServer, 9001)->then(function (\React\Stream\Stream $stream) use ($deferred, $casePath, $case) {
- $cn = new \Ratchet\RFC6455\Handshake\ClientNegotiator();
- $cnRequest = $cn->generateRequest(new Uri('ws://127.0.0.1:9001' . $casePath));
-
- $rawResponse = "";
- $response = null;
-
- $ms = null;
-
- $stream->on('data', function ($data) use ($stream, &$rawResponse, &$response, &$ms, $cn, $deferred, &$context, $cnRequest) {
- if ($response === null) {
- $rawResponse .= $data;
- $pos = strpos($rawResponse, "\r\n\r\n");
- if ($pos) {
- $data = substr($rawResponse, $pos + 4);
- $rawResponse = substr($rawResponse, 0, $pos + 4);
- $response = \GuzzleHttp\Psr7\parse_response($rawResponse);
-
- if (!$cn->validateResponse($cnRequest, $response)) {
- $stream->end();
- $deferred->reject();
- } else {
- $ms = echoStreamerFactory($stream);
- }
- }
- }
-
- // feed the message streamer
- if ($ms) {
- $ms->onData($data);
- }
- });
-
- $stream->on('close', function () use ($deferred) {
- $deferred->resolve();
- });
-
- $stream->write(\GuzzleHttp\Psr7\str($cnRequest));
- });
-
- return $deferred->promise();
-}
-
-function createReport() {
- global $factory;
- global $testServer;
-
- $deferred = new Deferred();
-
- $factory->create($testServer, 9001)->then(function (\React\Stream\Stream $stream) use ($deferred) {
- $reportPath = "/updateReports?agent=" . AGENT . "&shutdownOnComplete=true";
- $cn = new \Ratchet\RFC6455\Handshake\ClientNegotiator();
- $cnRequest = $cn->generateRequest(new Uri('ws://127.0.0.1:9001' . $reportPath));
-
- $rawResponse = "";
- $response = null;
-
- /** @var \Ratchet\RFC6455\Messaging\MessageBuffer $ms */
- $ms = null;
-
- $stream->on('data', function ($data) use ($stream, &$rawResponse, &$response, &$ms, $cn, $deferred, &$context, $cnRequest) {
- if ($response === null) {
- $rawResponse .= $data;
- $pos = strpos($rawResponse, "\r\n\r\n");
- if ($pos) {
- $data = substr($rawResponse, $pos + 4);
- $rawResponse = substr($rawResponse, 0, $pos + 4);
- $response = \GuzzleHttp\Psr7\parse_response($rawResponse);
-
- if (!$cn->validateResponse($cnRequest, $response)) {
- $stream->end();
- $deferred->reject();
- } else {
- $ms = new \Ratchet\RFC6455\Messaging\MessageBuffer(
- new \Ratchet\RFC6455\Messaging\CloseFrameChecker,
- function (\Ratchet\RFC6455\Messaging\MessageInterface $msg) use ($deferred, $stream) {
- $deferred->resolve($msg->getPayload());
- $stream->close();
- },
- null,
- false
- );
- }
- }
- }
-
- // feed the message streamer
- if ($ms) {
- $ms->onData($data);
- }
- });
-
- $stream->write(\GuzzleHttp\Psr7\str($cnRequest));
- });
-
- return $deferred->promise();
-}
-
-
-$testPromises = [];
-
-getTestCases()->then(function ($count) use ($loop) {
- $allDeferred = new Deferred();
-
- $runNextCase = function () use (&$i, &$runNextCase, $count, $allDeferred) {
- $i++;
- if ($i > $count) {
- $allDeferred->resolve();
- return;
- }
- runTest($i)->then($runNextCase);
- };
-
- $i = 0;
- $runNextCase();
-
- $allDeferred->promise()->then(function () {
- createReport();
- });
-});
-
-$loop->run();