/** * @return \Searchperience\RemoteAccess\Domain\Client */ public static function createClient() { $searchperienceClient = new \Searchperience\RemoteAccess\Domain\Client(); $httpClient = new \Guzzle\Http\Client(); $searchperienceClient->injectHttpClient($httpClient); return $searchperienceClient; }
/** * @dataProvider fetchDataProvider * @test */ public function fetch($fixtureUrl, $fixtureContent) { $searchperienceClient = new \Searchperience\RemoteAccess\Domain\Client(); /** @var $requestMock \Searchperience\RemoteAccess\Domain\Request */ $requestMock = $this->getMutedMock('\\Searchperience\\RemoteAccess\\Domain\\Request'); $requestMock->expects($this->once())->method('getUrl')->will($this->returnValue($fixtureUrl)); $httpRequestMock = $this->getMutedMock('\\Guzzle\\Http\\Message\\Request'); $httpResponseMock = $this->getMutedMock('\\Guzzle\\Http\\Message\\Response'); $httpResponseMock->expects($this->once())->method('getBody')->will($this->returnValue($fixtureContent)); $httpRequestMock->expects($this->once())->method('send')->will($this->returnValue($httpResponseMock)); /** @var $httpClientMock \Guzzle\Http\Client */ $httpClientMock = $this->getMutedMock('\\Guzzle\\Http\\Client'); $httpClientMock->expects($this->once())->method('get')->will($this->returnValue($httpRequestMock)); $searchperienceClient->injectHttpClient($httpClientMock); $searchperienceResponse = $searchperienceClient->fetch($requestMock); $this->assertEquals($fixtureContent, $searchperienceResponse->getRawResponse(), 'Client could not retrieve raw response'); }