public function it_accepts_redirection_options(ManagerInterface $manager, ActionEventManager $eventManager, ConfigurationInterface $configuration, Request $request, Entity $object, FormFactoryInterface $formFactory, FormInterface $form, FlashBagInterface $flashBag) { $request->isMethod('post')->willReturn(true); $form->submit($request)->shouldBeCalled(); $form->isValid()->willReturn(true); $manager->create('entity_class', [], [])->willReturn($object); $manager->save($object, [])->shouldBeCalled(); $object->getId()->willReturn(null); $formFactory->create('form_type', $object, ['f_param1' => 'value1', 'data_class' => 'entity_class'])->shouldBeCalled()->willReturn($form); $configuration->getActionOptions('create')->willReturn(['form_type' => 'form_type', 'form_options' => ['f_param1' => 'value1'], 'redirect_route' => 'redirect_route', 'redirect_route_parameters' => ['c_r_param1' => 'value1'], 'success_message' => 'success_message']); $configuration->hasAction('delete')->willReturn(false); $flashBag->add('success', '<success_message>')->shouldBeCalled(); $this->initializeEventManager($eventManager); $this->setConfiguration($configuration); $response = $this->execute($request); $response->shouldHaveType('Symfony\\Component\\HttpFoundation\\RedirectResponse'); $response->getTargetUrl()->shouldReturn('redirect_route?&c_r_param1=value1'); }