Skip to content

Commit 8357c1e

Browse files
committed
Fix exception message when PSR18UnexpectedPushGatewayResponse is thrown
The message was incorrect, it contained only some details but the context was missing.
1 parent bfd750c commit 8357c1e

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/PushGateway/PSR18UnexpectedPushGatewayResponse.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@ private function __construct(private RequestInterface $request, private Response
1414
{
1515
$exceptionCode = 0;
1616

17-
$message = 'Cannot connect PushGateway server to ' . $request->getUri()->__toString() . ':';
17+
$message = 'Cannot connect PushGateway server to ' . $request->getUri()->__toString();
1818
if ($response !== null) {
19-
$message = ' ' . $response->getStatusCode() . ' ' . $response->getReasonPhrase();
19+
$message .= ': ' . $response->getStatusCode() . ' ' . $response->getReasonPhrase();
2020
}
2121

2222
if ($clientException !== null) {
23-
$message = ' ' . $clientException->getMessage();
23+
$message .= ': ' . $clientException->getMessage();
2424
$exceptionCode = $clientException->getCode();
2525
}
2626

tests/unit/PushGateway/PSR18UnexpectedPushGatewayResponseTest.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ public function testInvalidResponse(): void
2020

2121
$exception = PSR18UnexpectedPushGatewayResponse::invalidResponse($request, $response);
2222

23+
self::assertStringContainsString('Cannot connect PushGateway server to /: 500 Internal', $exception->getMessage());
2324
self::assertSame($request, $exception->getRequest());
2425
self::assertSame($response, $exception->getResponse());
2526
self::assertNull($exception->getPrevious());
@@ -29,11 +30,12 @@ public function testInvalidResponse(): void
2930
public function testRequestFailure(): void
3031
{
3132
$request = Psr17FactoryDiscovery::findRequestFactory()->createRequest('PUT', '/');
32-
$clientException = new class extends Exception implements ClientExceptionInterface {
33+
$clientException = new class ('some reason') extends Exception implements ClientExceptionInterface {
3334
};
3435

3536
$exception = PSR18UnexpectedPushGatewayResponse::requestFailure($request, $clientException);
3637

38+
self::assertStringContainsString('Cannot connect PushGateway server to /: some reason', $exception->getMessage());
3739
self::assertSame($request, $exception->getRequest());
3840
self::assertNull($exception->getResponse());
3941
self::assertSame($clientException, $exception->getPrevious());

0 commit comments

Comments
 (0)