function it_throws_exception_when_can_not_fetch_response_using_http_client(ApiHttpClientInterface $apiHttpClient) { $apiHttpClient->get(Argument::type(ApiHttpPathAndQuery::class))->willThrow(ApiHttpClientException::class); $this->shouldThrow(CouldNotFetchResourceRepositoryException::class)->duringFindByIds(FindByIdsParameters::createForPublicationIdAndArticleIds(PublicationId::SA, [self::ARTICLE_ID])); $this->shouldThrow(CouldNotFetchResourceRepositoryException::class)->duringFind(FindParameters::createForPublicationIdAndArticleId(PublicationId::SA, self::ARTICLE_ID)); $this->shouldThrow(CouldNotFetchResourceRepositoryException::class)->duringFindByChangelog(FindByChangelogParameters::createForPublicationId(PublicationId::SA)); $this->shouldThrow(CouldNotFetchResourceRepositoryException::class)->duringFindBySections(FindBySectionParameters::createForPublicationIdAndSections(PublicationId::SA, [self::SECTION_NAME])); }
/** * @When I ask for articles for :publicationId publication using article repository: * * @param string $publicationId * @param array $articleIds */ public function iAskForArticlesForPublicationUsingArticleRepository($publicationId, array $articleIds) { $findParameters = FindByIdsParameters::createForPublicationIdAndArticleIds($publicationId, $articleIds); foreach ($this->articleRepository->findByIds($findParameters)->getArticles() as $article) { $this->articles[$article['id']] = $article; } }