/** * @covers \Magento\Framework\Data\Form\Element\AbstractElement::getHtmlContainerId() */ public function testGetHtmlContainerIdWithFieldContainerIdPrefix() { $id = 'id'; $prefix = 'prefix_'; $formMock = $this->getMock('Magento\\Framework\\Data\\Form\\AbstractForm', ['getFieldContainerIdPrefix'], [], '', false); $formMock->expects($this->once())->method('getFieldContainerIdPrefix')->will($this->returnValue($prefix)); $this->_model->setId($id); $this->_model->setForm($formMock); $this->assertEquals($prefix . $id, $this->_model->getHtmlContainerId()); }
/** * Add element to collection * * @todo get it straight with $after * @param AbstractElement $element * @param bool|string $after * @return AbstractElement */ public function add(AbstractElement $element, $after = false) { // Set the Form for the node if ($this->_container->getForm() instanceof Form) { $element->setContainer($this->_container); $element->setForm($this->_container->getForm()); } if ($after === false) { $this->_elements[] = $element; } elseif ($after === '^') { array_unshift($this->_elements, $element); } elseif (is_string($after)) { $newOrderElements = array(); foreach ($this->_elements as $index => $currElement) { if ($currElement->getId() == $after) { $newOrderElements[] = $currElement; $newOrderElements[] = $element; $this->_elements = array_merge($newOrderElements, array_slice($this->_elements, $index + 1)); return $element; } $newOrderElements[] = $currElement; } $this->_elements[] = $element; } return $element; }
/** * Add form element * * @param AbstractElement $element * @param bool|string|null $after * @return $this */ public function addElement(AbstractElement $element, $after = null) { $element->setForm($this); $this->getElements()->add($element, $after); return $this; }