function it_throws_a_404_exception_if_resource_is_not_found_when_trying_to_apply_state_machine_transition(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::UPDATE)->willReturn('sylius.product.update');
$authorizationChecker->isGranted($configuration, 'sylius.product.update')->willReturn(true);
$singleResourceProvider->get($configuration, $repository)->willReturn(null);
$this->shouldThrow(new NotFoundHttpException())->during('applyStateMachineTransitionAction', [$request]);
}