public function testProcessWithRedirectRoute() { $data = ['data' => ['param' => 42]]; $redirectRouteName = 'redirect_route'; $redirectUrl = '/redirect/url'; $expectedResponse = new RedirectResponse($redirectUrl); $this->router->expects($this->once())->method('generate')->with($redirectRouteName, [ProductDataStorage::STORAGE_KEY => true], UrlGeneratorInterface::ABSOLUTE_PATH)->willReturn($redirectUrl); $this->storage->expects($this->once())->method('set')->with($data); $this->processor->setRedirectRouteName($redirectRouteName); $this->assertEquals($expectedResponse, $this->processor->process($data, new Request())); }
/** * @param object $entity */ protected function fillData($entity) { $data = $this->storage->get(); $this->storage->remove(); if (!$data) { return; } if (!empty($data[ProductDataStorage::ENTITY_DATA_KEY]) && is_array($data[ProductDataStorage::ENTITY_DATA_KEY])) { $this->fillEntityData($entity, $data[ProductDataStorage::ENTITY_DATA_KEY]); } if (!empty($data[ProductDataStorage::ENTITY_ITEMS_DATA_KEY]) && is_array($data[ProductDataStorage::ENTITY_ITEMS_DATA_KEY])) { $itemsData = $data[ProductDataStorage::ENTITY_ITEMS_DATA_KEY]; $this->fillItemsData($entity, $itemsData); } }
/** * @param array $data */ protected function assertStorageCalled(array $data) { $this->storage->expects($this->once())->method('get')->willReturn($data); $this->storage->expects($this->once())->method('remove'); }
public function testRemove() { $this->session->expects($this->once())->method('remove')->with(ProductDataStorage::PRODUCT_DATA_KEY); $this->storage->remove(); }
/** * {@inheritdoc} */ public function process(array $data, Request $request) { $this->storage->set($data); return empty($this->redirectRouteName) ? null : new RedirectResponse($this->getUrl($this->redirectRouteName)); }