public function testBuildForm()
 {
     $builder = $this->getMock('Symfony\\Component\\Form\\Test\\FormBuilderInterface');
     $workflowItem = new WorkflowItem();
     $transitionName = 'test';
     $transition = $this->getMock('Oro\\Bundle\\WorkflowBundle\\Model\\Transition');
     $transition->expects($this->once())->method('getName')->will($this->returnValue($transitionName));
     $workflow = new Workflow();
     $workflow->getTransitionManager()->setTransitions(array($transition));
     $options = array('workflow' => $workflow, 'workflow_item' => $workflowItem, 'transition_name' => $transitionName);
     $this->type->buildForm($builder, $options);
 }
 /**
  * @param Workflow $workflow
  * @throws AssemblerException
  */
 protected function validateWorkflow(Workflow $workflow)
 {
     $startTransitions = $workflow->getTransitionManager()->getTransitions()->filter(function (Transition $transition) {
         return $transition->isStart();
     });
     if (!$startTransitions->count()) {
         throw new AssemblerException(sprintf('Workflow "%s" does not contains neither start step nor start transitions', $workflow->getName()));
     }
     if ($workflow->getType() == Workflow::TYPE_ENTITY) {
         /** @var Step $step */
         foreach ($workflow->getStepManager()->getSteps() as $step) {
             if ($step->getFormOptions()) {
                 throw new AssemblerException(sprintf('Workflow "%s" has type "entity" and cannot support form options in step "%s"', $workflow->getName(), $step->getName()));
             }
         }
     }
 }
Ejemplo n.º 3
0
 /**
  * @param Workflow $workflow
  * @throws AssemblerException
  */
 protected function validateWorkflow(Workflow $workflow)
 {
     $startTransitions = $workflow->getTransitionManager()->getTransitions()->filter(function (Transition $transition) {
         return $transition->isStart();
     });
     if (!$startTransitions->count()) {
         throw new AssemblerException(sprintf('Workflow "%s" does not contains neither start step nor start transitions', $workflow->getName()));
     }
 }