コード例 #1
0
 function it_makes_a_response(\LaraPackage\Api\Contracts\Request\Parser $requestParser, ResponseFactory $response, \LaraPackage\Api\Contracts\Factory\VersionFactory $versionFactory, \LaraPackage\Api\Contracts\MediaType\Json $media, \Illuminate\Http\Response $illuminateResponse, \LaraPackage\Api\Contracts\Config\ApiVersion $versionInfoRetriever)
 {
     $mediaType = 'json';
     $version = 4;
     $vendor = 'vnd.wps_api.';
     $versionDesignator = 'v4';
     $dataArray = ['data' => 'array'];
     $jsonData = json_encode($dataArray);
     $requestParser->acceptedMediaType()->shouldBeCalled()->willReturn($mediaType);
     $versionInfoRetriever->vendor($version)->shouldBeCalled()->willReturn($vendor);
     $versionInfoRetriever->versionDesignator($version)->shouldBeCalled()->willReturn($versionDesignator);
     $versionFactory->makeMediaType($mediaType)->shouldBeCalled()->willReturn($media);
     $media->format($dataArray)->shouldBeCalled()->willReturn($jsonData);
     $response->make($jsonData, 200, ['Content-Type' => 'application/' . $vendor . $versionDesignator . '+' . $mediaType])->shouldBeCalled()->willReturn($illuminateResponse);
     $this->make($dataArray)->shouldReturn($illuminateResponse);
 }
コード例 #2
0
 /**
  * @param array $headers
  * @param       $mediaType
  *
  * @return array
  */
 protected function setContentTypeHeader(array $headers, $mediaType)
 {
     $headers['Content-Type'] = 'application/' . $this->versionInfoRetriever->vendor($this->version) . $this->versionInfoRetriever->versionDesignator($this->version) . '+' . $mediaType;
     return $headers;
 }