Support for PSR7 2.x

This commit is contained in:
Erik Niebla 2021-12-01 13:59:17 +00:00
parent fb8cf474be
commit b6eebb555b
4 changed files with 21 additions and 17 deletions

View File

@ -27,7 +27,7 @@
}, },
"require": { "require": {
"php": ">=5.4.2", "php": ">=5.4.2",
"guzzlehttp/psr7": "^1.0" "guzzlehttp/psr7": "^1.7|^2.0"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "5.7.*", "phpunit/phpunit": "5.7.*",

View File

@ -1,4 +1,6 @@
<?php <?php
use GuzzleHttp\Psr7\Message;
use GuzzleHttp\Psr7\Uri; use GuzzleHttp\Psr7\Uri;
use Ratchet\RFC6455\Handshake\InvalidPermessageDeflateOptionsException; use Ratchet\RFC6455\Handshake\InvalidPermessageDeflateOptionsException;
use Ratchet\RFC6455\Handshake\PermessageDeflateOptions; use Ratchet\RFC6455\Handshake\PermessageDeflateOptions;
@ -72,7 +74,7 @@ function getTestCases() {
if ($pos) { if ($pos) {
$data = substr($rawResponse, $pos + 4); $data = substr($rawResponse, $pos + 4);
$rawResponse = substr($rawResponse, 0, $pos + 4); $rawResponse = substr($rawResponse, 0, $pos + 4);
$response = \GuzzleHttp\Psr7\parse_response($rawResponse); $response = Message::parseResponse($rawResponse);
if (!$cn->validateResponse($cnRequest, $response)) { if (!$cn->validateResponse($cnRequest, $response)) {
$connection->end(); $connection->end();
@ -101,7 +103,7 @@ function getTestCases() {
} }
}); });
$connection->write(\GuzzleHttp\Psr7\str($cnRequest)); $connection->write(Message::toString($cnRequest));
}); });
return $deferred->promise(); return $deferred->promise();
@ -137,7 +139,7 @@ function runTest($case)
if ($pos) { if ($pos) {
$data = substr($rawResponse, $pos + 4); $data = substr($rawResponse, $pos + 4);
$rawResponse = substr($rawResponse, 0, $pos + 4); $rawResponse = substr($rawResponse, 0, $pos + 4);
$response = \GuzzleHttp\Psr7\parse_response($rawResponse); $response = Message::parseResponse($rawResponse);
if (!$cn->validateResponse($cnRequest, $response)) { if (!$cn->validateResponse($cnRequest, $response)) {
echo "Invalid response.\n"; echo "Invalid response.\n";
@ -167,7 +169,7 @@ function runTest($case)
$deferred->resolve(); $deferred->resolve();
}); });
$connection->write(\GuzzleHttp\Psr7\str($cnRequest)); $connection->write(Message::toString($cnRequest));
}); });
return $deferred->promise(); return $deferred->promise();
@ -199,7 +201,7 @@ function createReport() {
if ($pos) { if ($pos) {
$data = substr($rawResponse, $pos + 4); $data = substr($rawResponse, $pos + 4);
$rawResponse = substr($rawResponse, 0, $pos + 4); $rawResponse = substr($rawResponse, 0, $pos + 4);
$response = \GuzzleHttp\Psr7\parse_response($rawResponse); $response = Message::parseResponse($rawResponse);
if (!$cn->validateResponse($cnRequest, $response)) { if (!$cn->validateResponse($cnRequest, $response)) {
$connection->end(); $connection->end();
@ -228,7 +230,7 @@ function createReport() {
} }
}); });
$connection->write(\GuzzleHttp\Psr7\str($cnRequest)); $connection->write(Message::toString($cnRequest));
}); });
return $deferred->promise(); return $deferred->promise();

View File

@ -1,5 +1,6 @@
<?php <?php
use GuzzleHttp\Psr7\Message;
use GuzzleHttp\Psr7\Response; use GuzzleHttp\Psr7\Response;
use Ratchet\RFC6455\Handshake\PermessageDeflateOptions; use Ratchet\RFC6455\Handshake\PermessageDeflateOptions;
use Ratchet\RFC6455\Messaging\MessageBuffer; use Ratchet\RFC6455\Messaging\MessageBuffer;
@ -35,18 +36,18 @@ $socket->on('connection', function (React\Socket\ConnectionInterface $connection
return; return;
} }
$headerComplete = true; $headerComplete = true;
$psrRequest = \GuzzleHttp\Psr7\parse_request($parts[0] . "\r\n\r\n"); $psrRequest = Message::parseRequest($parts[0] . "\r\n\r\n");
$negotiatorResponse = $negotiator->handshake($psrRequest); $negotiatorResponse = $negotiator->handshake($psrRequest);
$negotiatorResponse = $negotiatorResponse->withAddedHeader("Content-Length", "0"); $negotiatorResponse = $negotiatorResponse->withAddedHeader("Content-Length", "0");
if ($negotiatorResponse->getStatusCode() !== 101 && $psrRequest->getUri()->getPath() === '/shutdown') { if ($negotiatorResponse->getStatusCode() !== 101 && $psrRequest->getUri()->getPath() === '/shutdown') {
$connection->end(\GuzzleHttp\Psr7\str(new Response(200, [], 'Shutting down echo server.' . PHP_EOL))); $connection->end(Message::toString(new Response(200, [], 'Shutting down echo server.' . PHP_EOL)));
$socket->close(); $socket->close();
return; return;
}; };
$connection->write(\GuzzleHttp\Psr7\str($negotiatorResponse)); $connection->write(Message::toString($negotiatorResponse));
if ($negotiatorResponse->getStatusCode() !== 101) { if ($negotiatorResponse->getStatusCode() !== 101) {
$connection->end(); $connection->end();

View File

@ -2,6 +2,7 @@
namespace Ratchet\RFC6455\Test\Unit\Handshake; namespace Ratchet\RFC6455\Test\Unit\Handshake;
use GuzzleHttp\Psr7\Message;
use Ratchet\RFC6455\Handshake\RequestVerifier; use Ratchet\RFC6455\Handshake\RequestVerifier;
use Ratchet\RFC6455\Handshake\ServerNegotiator; use Ratchet\RFC6455\Handshake\ServerNegotiator;
use PHPUnit\Framework\TestCase; use PHPUnit\Framework\TestCase;
@ -24,7 +25,7 @@ Accept-Language: en-US,en;q=0.8
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);
@ -53,7 +54,7 @@ Accept-Language: en-US,en;q=0.8
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);
@ -80,7 +81,7 @@ Accept-Language: en-US,en;q=0.8
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);
@ -107,7 +108,7 @@ Accept-Language: en-US,en;q=0.8
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);
@ -141,7 +142,7 @@ Accept-Language: en-US,en;q=0.8
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);
@ -175,7 +176,7 @@ Accept-Language: en-US,en;q=0.8
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);
@ -205,7 +206,7 @@ Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
'; ';
$request = \GuzzleHttp\Psr7\parse_request($requestText); $request = Message::parseRequest($requestText);
$response = $negotiator->handshake($request); $response = $negotiator->handshake($request);