Exemplo n.º 1
0
 /**
  * Add command as last in the list of callbacks
  *
  * @param Mage_Backend_Model_Menu_Builder_CommandAbstract $command
  * @return Mage_Backend_Model_Menu_Builder_CommandAbstract
  * @throws InvalidArgumentException if invalid chaining command is supplied
  */
 public function chain(Mage_Backend_Model_Menu_Builder_CommandAbstract $command)
 {
     if (is_null($this->_next)) {
         $this->_next = $command;
     } else {
         $this->_next->chain($command);
     }
     return $this;
 }
Exemplo n.º 2
0
 public function testExecuteCallsNextCommandInChain()
 {
     $itemParams = array();
     $this->_model->expects($this->once())->method('_execute')->with($this->equalTo($itemParams))->will($this->returnValue($itemParams));
     $command1 = $this->getMock('Mage_Backend_Model_Menu_Builder_Command_Update', array(), array(array('id' => 1)));
     $command1->expects($this->once())->method('execute')->with($this->equalTo($itemParams))->will($this->returnValue($itemParams));
     $this->_model->chain($command1);
     $this->assertEquals($itemParams, $this->_model->execute($itemParams));
 }
Exemplo n.º 3
0
 /**
  * Add command as last in the list of callbacks
  *
  * @param Mage_Backend_Model_Menu_Builder_CommandAbstract $command
  * @return Mage_Backend_Model_Menu_Builder_CommandAbstract
  * @throws InvalidArgumentException
  */
 public function chain(Mage_Backend_Model_Menu_Builder_CommandAbstract $command)
 {
     if ($command instanceof Mage_Backend_Model_Menu_Builder_Command_Add) {
         throw new InvalidArgumentException("Two 'add' commands cannot have equal id (" . $command->getId() . ")");
     }
     return parent::chain($command);
 }