function let()
 {
     $requestParams = new RequestParameters();
     $requestParams->setQuery('text')->setMaxResults(10);
     $request = new Request('example.com', '/request/uri', $requestParams, 100);
     $request->setHeaders(array('Content-Type' => 'application/json'));
     $request->setOptions(array('some_options' => 'some value'));
     $this->beConstructedWith($request);
 }
 public function let(ClientInterface $client, OAuthPasswordAuthentication $authentication, Request $request)
 {
     $this->beConstructedWith($client, $authentication);
     $baseUrl = 'http://httpbin.org/';
     $fullUrl = sprintf('%s/%s', $baseUrl, 'status/200');
     $headers = ['Accept' => 'application/json'];
     $newHeaders = ['Accept' => 'application/json', 'Authorization' => 'OAuth2 some_access_token'];
     $request->getBaseUrl()->willReturn($baseUrl);
     $request->getFullUrl()->willReturn($fullUrl);
     $request->getHeaders()->willReturn($headers);
     $request->setHeaders($newHeaders)->willReturn($request);
     $authentication->setBaseUrl($baseUrl)->willReturn($authentication);
     $authentication->getAccessToken()->willReturn('some_access_token');
 }