From 0692fe81afeae11fb17cce735b12f52c92f95892 Mon Sep 17 00:00:00 2001 From: joskfg Date: Fri, 1 Mar 2024 10:31:49 +0100 Subject: [PATCH] Fix tests and dependencies (#68) * Fix tests and dependencies * Improve README --------- Co-authored-by: Jose Manuel Cardona --- README.md | 10 ++++++++-- composer.json | 2 +- src/Console/Mutation/GenerateConfig.php | 2 +- tests/ResponseBuilderTest.php | 19 +++++++++++++++---- 4 files changed, 25 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 1da81f4..7ffc4e2 100644 --- a/README.md +++ b/README.md @@ -32,13 +32,19 @@ composer require softonic/graphql-client You can instantiate a simple client or with Oauth2 support. -Simple Client: +#### Simple Client ```php checkArguments($input, $output)) { return 1; diff --git a/tests/ResponseBuilderTest.php b/tests/ResponseBuilderTest.php index 49944cb..d7e3c8a 100644 --- a/tests/ResponseBuilderTest.php +++ b/tests/ResponseBuilderTest.php @@ -2,8 +2,10 @@ namespace Softonic\GraphQL; +use GuzzleHttp\Psr7\BufferStream; use PHPUnit\Framework\TestCase; use Psr\Http\Message\ResponseInterface; +use Psr\Http\Message\StreamInterface; use UnexpectedValueException; class ResponseBuilderTest extends TestCase @@ -24,7 +26,7 @@ public function testBuildMalformedResponse() $mockHttpResponse = $this->createMock(ResponseInterface::class); $mockHttpResponse->expects($this->once()) ->method('getBody') - ->willReturn('malformed response'); + ->willReturn($this->stringToStream('malformed response')); $this->expectException(UnexpectedValueException::class); $this->expectExceptionMessage('Invalid JSON response. Response body: '); @@ -53,7 +55,7 @@ public function testBuildInvalidGraphqlJsonResponse(string $body) $mockHttpResponse->expects($this->once()) ->method('getBody') - ->willReturn($body); + ->willReturn($this->stringToStream($body)); $this->expectException(UnexpectedValueException::class); $this->expectExceptionMessage('Invalid GraphQL JSON response. Response body: '); @@ -67,7 +69,7 @@ public function testBuildValidGraphqlJsonWithoutErrors() $mockHttpResponse->expects($this->once()) ->method('getBody') - ->willReturn('{"data": {"foo": "bar"}}'); + ->willReturn($this->stringToStream('{"data": {"foo": "bar"}}')); $expectedData = ['foo' => 'bar']; $dataObjectMock = [ @@ -107,7 +109,7 @@ public function testBuildValidGraphqlJsonWithErrors(string $body) $mockHttpResponse->expects($this->once()) ->method('getBody') - ->willReturn($body); + ->willReturn($this->stringToStream($body)); $this->dataObjectBuilder->expects($this->once()) ->method('buildQuery') @@ -121,4 +123,13 @@ public function testBuildValidGraphqlJsonWithErrors(string $body) $this->assertTrue($response->hasErrors()); $this->assertEquals([['foo' => 'bar']], $response->getErrors()); } + + public function stringToStream(string $string): StreamInterface + { + $buffer = new BufferStream(); + + $buffer->write($string); + + return $buffer; + } }