function let(ContainerInterface $container, HttpRequestVerifierInterface $httpRequestVerifier, TokenInterface $token, Request $request, CartProviderInterface $cartProvider, RegistryInterface $payum, PaymentInterface $payment, EventDispatcherInterface $eventDispatcher, DoctrinRegistryInterface $doctrine, ObjectManager $objectManager, Session $session, FlashBagInterface $flashBag, TranslatorInterface $translator, FactoryInterface $factory)
 {
     $session->getFlashBag()->willReturn($flashBag);
     $doctrine->getManager()->willReturn($objectManager);
     $token->getPaymentName()->willReturn('aPaymentName');
     $payum->getPayment('aPaymentName')->willReturn($payment);
     $httpRequestVerifier->verify($request)->willReturn($token);
     $httpRequestVerifier->invalidate($token)->willReturn(null);
     $container->get('payum.security.http_request_verifier')->willReturn($httpRequestVerifier);
     $container->get('sylius.cart_provider')->willReturn($cartProvider);
     $container->get('payum')->willReturn($payum);
     $container->get('event_dispatcher')->willReturn($eventDispatcher);
     $container->get('session')->willReturn($session);
     $container->get('doctrine')->willReturn($doctrine);
     $container->has('doctrine')->willReturn(true);
     $container->get('translator')->willReturn($translator);
     $container->get('sm.factory')->willReturn($factory);
     $this->setName('purchase');
     $this->setContainer($container);
 }