function it_throws_a_404_exception_if_resource_is_not_found_based_on_configuration(MetadataInterface $metadata, RequestConfigurationFactoryInterface $requestConfigurationFactory, RequestConfiguration $configuration, Request $request, AuthorizationCheckerInterface $authorizationChecker, RepositoryInterface $repository, SingleResourceProviderInterface $singleResourceProvider)
{
$requestConfigurationFactory->create($metadata, $request)->willReturn($configuration);
$configuration->hasPermission()->willReturn(true);
$configuration->getPermission(ResourceActions::SHOW)->willReturn('sylius.product.show');
$authorizationChecker->isGranted($configuration, 'sylius.product.show')->willReturn(true);
$singleResourceProvider->get($configuration, $repository)->willReturn(null);
$this->shouldThrow(new NotFoundHttpException())->during('showAction', [$request]);
}