Ejemplo n.º 1
0
 /**
  * @covers \Magento\Framework\View\Layout\ScheduledStructure::setElementToMove
  */
 public function testSetElementToMove()
 {
     $data = ['some', 'new', 'data', 'element', 'to', 'move'];
     /** Test add new element */
     $this->assertFalse($this->_model->hasElement('new_element'));
     $this->_model->setElementToMove('new_element', $data);
     $this->assertEquals($data, $this->_model->getElementToMove('new_element'));
     /** Test override existing element */
     $this->assertNotEquals($data, $this->_model->getElementToMove('element1'));
     $this->_model->setElementToMove('element1', $data);
     $this->assertEquals($data, $this->_model->getElementToMove('element1'));
 }
Ejemplo n.º 2
0
 /**
  * Move element in scheduled structure
  *
  * @param string $element
  * @return $this
  */
 protected function _moveElementInStructure($element)
 {
     list($destination, $siblingName, $isAfter, $alias) = $this->_scheduledStructure->getElementToMove($element);
     if (!$alias && false === $this->_structure->getChildId($destination, $this->getElementAlias($element))) {
         $alias = $this->getElementAlias($element);
     }
     $this->_structure->unsetChild($element, $alias)->setAsChild($element, $destination, $alias);
     $this->reorderChild($destination, $element, $siblingName, $isAfter);
     return $this;
 }