/** * @test * @dataProvider getUniqueIdentifierReplacesSpecialCharactersByUnderscoresProvider * @param string $formIdentifier * @param string $elementIdentifier * @param string $expectedResult */ public function getUniqueIdentifierReplacesSpecialCharactersByUnderscores($formIdentifier, $elementIdentifier, $expectedResult) { $formDefinition = new FormDefinition($formIdentifier); $myFormElement = $this->getFormElement(array($elementIdentifier, 'Neos.Form:MyType')); $page = new Page('somePage'); $formDefinition->addPage($page); $page->addElement($myFormElement); $this->assertSame($expectedResult, $myFormElement->getUniqueIdentifier()); }
/** * @test */ public function arrayAccessReturnsDefaultValuesIfSet() { $formDefinition = new FormDefinition('foo'); $page1 = new Page('p1'); $formDefinition->addPage($page1); $element1 = new \Neos\Form\FormElements\GenericFormElement('foo', 'Bar'); $page1->addElement($element1); $element1->setDefaultValue('My Default'); $formRuntime = $this->createFormRuntime($formDefinition); $formState = new \Neos\Form\Core\Runtime\FormState(); $formRuntime->_set('formState', $formState); $this->assertSame($formState, $formRuntime->getFormState()); $this->assertSame('My Default', $formRuntime['foo']); $formRuntime['foo'] = 'Overridden'; $this->assertSame('Overridden', $formRuntime['foo']); $formRuntime['foo'] = null; $this->assertSame('My Default', $formRuntime['foo']); $formRuntime['foo'] = 'Overridden2'; $this->assertSame('Overridden2', $formRuntime['foo']); unset($formRuntime['foo']); $this->assertSame('My Default', $formRuntime['foo']); $this->assertSame(null, $formRuntime['nonExisting']); }
/** * @test */ public function removePageRemovesFormElementsOnPageFromForm() { $formDefinition = new FormDefinition('foo1'); $page1 = new Page('bar1'); $element1 = $this->getMockFormElement('el1'); $page1->addElement($element1); $formDefinition->addPage($page1); $element2 = $this->getMockFormElement('el2'); $page1->addElement($element2); $this->assertSame($element1, $formDefinition->getElementByIdentifier('el1')); $this->assertSame($element2, $formDefinition->getElementByIdentifier('el2')); $formDefinition->removePage($page1); $this->assertNull($formDefinition->getElementByIdentifier('el1')); $this->assertNull($formDefinition->getElementByIdentifier('el2')); }