public function testCreate() { $event = new ConfigCreateEvent(); $event->setEventName('foo')->setValue('bar')->setLocale('en_US')->setTitle('test config foo bar')->setHidden(true)->setSecured(true)->setDispatcher($this->dispatcher); $action = new Config(); $action->create($event); $createdConfig = $event->getConfig(); $this->assertInstanceOf('Thelia\\Model\\Config', $createdConfig); $this->assertFalse($createdConfig->isNew()); $this->assertEquals('foo', $createdConfig->getName()); $this->assertEquals('bar', $createdConfig->getValue()); $this->assertEquals('en_US', $createdConfig->getLocale()); $this->assertEquals('test config foo bar', $createdConfig->getTitle()); $this->assertEquals(1, $createdConfig->getHidden()); $this->assertEquals(1, $createdConfig->getSecured()); return $createdConfig; }
protected function getCreationEvent($data) { $createEvent = new ConfigCreateEvent(); $createEvent->setEventName($data['name'])->setValue($data['value'])->setLocale($data["locale"])->setTitle($data['title'])->setHidden($data['hidden'])->setSecured($data['secured']); return $createEvent; }
/** * Create a new configuration entry * * @param \Thelia\Core\Event\Config\ConfigCreateEvent $event * @param $eventName * @param EventDispatcherInterface $dispatcher */ public function create(ConfigCreateEvent $event, $eventName, EventDispatcherInterface $dispatcher) { $config = new ConfigModel(); $config->setDispatcher($dispatcher)->setName($event->getEventName())->setValue($event->getValue())->setLocale($event->getLocale())->setTitle($event->getTitle())->setHidden($event->getHidden())->setSecured($event->getSecured())->save(); $event->setConfig($config); }