/** * @covers \jones\novaposhta\http\Client::execute * @expectedException \jones\novaposhta\http\ClientException * @expectedExceptionMessage Exception thrown by Guzzle client and has response */ public function testExecuteWithClientExceptionAndHasResponse() { $message = 'Exception thrown by Guzzle client and has response'; /** @var \GuzzleHttp\Psr7\Request $request */ $request = $this->getMockBuilder(GuzzleRequest::class)->disableOriginalConstructor()->getMock(); $exception = new ClientException($message, $request, $this->response); $this->guzzleClient->expects(static::once())->method('post')->willThrowException($exception); $this->response->expects(static::never())->method('getBody'); $this->client->execute($this->request, ConverterInterface::FORMAT_XML, Request::API_URL_XML); }
/** * @covers \jones\novaposhta\request\Request::getUrl */ public function testGetJsonUrl() { $this->request = Yii::createObject(Request::class, [new JsonConverter(), $this->httpClientFactory, self::API_KEY]); $this->httpClient->expects(static::once())->method('execute')->willReturn(json_encode(['success' => 'true', 'data' => [['Description' => 'Kiev']], 'errors', 'warnings', 'info'])); $this->request->execute(); }