/**
  * Return MachineManager.
  *
  * @param string $stateLineNamespace StateLine Entity Namespace
  *
  * @return MachineManager Machine Manager
  */
 public function getMachineManager($stateLineNamespace = 'Elcodi\\Component\\StateTransitionMachine\\Entity\\StateLine')
 {
     $machine = $this->getMachine();
     $stateLineFactory = new StateLineFactory();
     $stateLineFactory->setEntityNamespace($stateLineNamespace);
     $stateLineFactory->setDateTimeFactory(new DateTimeFactory());
     /**
      * @var EventDispatcherInterface $eventDispatcher
      */
     $eventDispatcher = $this->getMock('Elcodi\\Component\\StateTransitionMachine\\EventDispatcher\\MachineEventDispatcher', [], [], '', false);
     $machineManager = new MachineManager($machine, $eventDispatcher, $stateLineFactory);
     return $machineManager;
 }
 /**
  * Return MachineManager
  *
  * @param integer $nbEventDispatcherCalls Number of times eventDispatcher::dispatch will be called
  * @param string  $stateLineNamespace     StateLine Entity Namespace
  *
  * @return MachineManager Machine Manager
  */
 public function getMachineManager($nbEventDispatcherCalls = 4, $stateLineNamespace = 'Elcodi\\Component\\StateTransitionMachine\\Entity\\StateLine')
 {
     $machine = $this->getMachine();
     $stateLineFactory = new StateLineFactory();
     $stateLineFactory->setEntityNamespace($stateLineNamespace);
     $stateLineFactory->setDateTimeFactory(new DateTimeFactory());
     /**
      * @var EventDispatcherInterface $eventDispatcher
      */
     $eventDispatcher = $this->getMock('Symfony\\Component\\EventDispatcher\\EventDispatcherInterface');
     $eventDispatcher->expects($this->exactly($nbEventDispatcherCalls))->method('dispatch');
     $machineManager = new MachineManager($machine, $eventDispatcher, $stateLineFactory);
     return $machineManager;
 }
Esempio n. 3
0
 /**
  * Create an state line given its name and description
  *
  * @param string $name        Name
  * @param string $description Description
  *
  * @return StateLineInterface State Line
  */
 public function createStateLine($name, $description)
 {
     $stateLine = $this->stateLineFactory->create()->setName($name)->setDescription($description);
     return $stateLine;
 }