From 9bd6b23c05a2bbbfbfe272da26bd13196d84785c Mon Sep 17 00:00:00 2001 From: eai04191 Date: Thu, 22 Aug 2019 08:58:59 +0900 Subject: [PATCH] =?UTF-8?q?=E8=A4=87=E6=95=B0=E3=81=AEresponse=E3=82=92?= =?UTF-8?q?=E5=8F=97=E3=81=91=E3=82=89=E3=82=8C=E3=82=8B=E3=82=88=E3=81=86?= =?UTF-8?q?=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MetadataResolver/CreateMockedResolver.php | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/tests/Unit/MetadataResolver/CreateMockedResolver.php b/tests/Unit/MetadataResolver/CreateMockedResolver.php index 528728c..0fd1f59 100644 --- a/tests/Unit/MetadataResolver/CreateMockedResolver.php +++ b/tests/Unit/MetadataResolver/CreateMockedResolver.php @@ -22,12 +22,12 @@ trait CreateMockedResolver /** * @param string $resolverClass - * @param string $responseText + * @param string|array $response * @param array $headers * @param int $status * @return Resolver */ - protected function createResolver(string $resolverClass, string $responseText, array $headers = [], int $status = 200) + protected function createResolver(string $resolverClass, $response, array $headers = [], int $status = 200) { if (!$this->shouldUseMock()) { $this->resolver = app()->make($resolverClass); @@ -39,8 +39,26 @@ trait CreateMockedResolver 'content-type' => 'text/html', ]; - $mockResponse = new Response($status, $headers, $responseText); - $this->handler = new MockHandler([$mockResponse]); + if (is_array($response)) { + $responses = $response; + $mockResponses = []; + foreach ($responses as $response) { + if (is_array($response)) { + $response += [ + 1 => [], + 2 => 200 + ]; + array_push($mockResponses, new Response($response[2], $response[1], $response[0])); + } else { + array_push($mockResponses, new Response($status, $headers, $response)); + } + } + $this->handler = new MockHandler($mockResponses); + } else { + $mockResponse = new Response($status, $headers, $response); + $this->handler = new MockHandler([$mockResponse]); + } + $client = new Client(['handler' => $this->handler]); $this->resolver = app()->make($resolverClass, ['client' => $client]);