13 public $base_path =
'./Services/WorkflowEngine/test/parser/';
18 return $this->base_path . $this->suite_path . $test_name .
'.bpmn2';
23 return $this->base_path . $this->suite_path . $test_name .
'_output.php';
28 return $this->base_path . $this->suite_path . $test_name .
'_goldsample.php';
33 chdir( dirname( __FILE__ ) );
34 chdir(
'../../../../../' );
36 require_once
'./Services/WorkflowEngine/classes/parser/class.ilBPMN2Parser.php';
39 public function test_WorkflowWithSimpleDataInputShouldOutputAccordingly()
41 $test_name =
'DataInput_Simple';
49 $this->assertTrue(substr($return,0,25) ==
'No syntax errors detected',
'Lint of output code failed.');
52 $this->assertEquals($goldsample,
$parse_result,
'Output does not match goldsample.');
56 $process =
new $test_name;
57 $process->setInstanceVarById(
'DataInput_1',
'YaddaYadda');
58 $process->startWorkflow();
59 $all_triggered =
true;
60 foreach($process->getNodes() as $node)
63 foreach($node->getDetectors() as $detector)
66 if(!$detector->getActivated())
68 $all_triggered =
false;
71 foreach($node->getEmitters() as $emitter)
74 if(!$emitter->getActivated())
76 $all_triggered =
false;
80 $this->assertEquals(
'YaddaYadda', $process->getInstanceVarById(
'DataInput_1'),
'Inputvar was not kept.');
81 $this->assertTrue($all_triggered,
'Not all nodes were triggered.');
86 public function test_WorkflowWithDataInputPropertiesShouldOutputAccordingly()
88 $test_name =
'DataInput_WithProperties';
96 $this->assertTrue(substr($return,0,25) ==
'No syntax errors detected',
'Lint of output code failed.');
99 $this->assertEquals($goldsample,
$parse_result,
'Output does not match goldsample.');
103 $process =
new $test_name;
104 $process->setInstanceVarById(
'DataInput_1',
'YaddaYadda');
105 $process->startWorkflow();
106 $all_triggered =
true;
107 foreach($process->getNodes() as $node)
110 foreach($node->getDetectors() as $detector)
113 if(!$detector->getActivated())
115 $all_triggered =
false;
118 foreach($node->getEmitters() as $emitter)
121 if(!$emitter->getActivated())
123 $all_triggered =
false;
127 $this->assertEquals(
'YaddaYadda', $process->getInstanceVarById(
'DataInput_1'),
'Inputvar was not kept.');
128 $this->assertTrue($all_triggered,
'Not all nodes were triggered.');
133 public function test_WorkflowWithRepositoryObjectSelectorShouldOutputAccordingly()
135 $test_name =
'DataInput_RepositoryObjectSelector';
143 $this->assertTrue(substr($return,0,25) ==
'No syntax errors detected',
'Lint of output code failed.');
146 $this->assertEquals($goldsample,
$parse_result,
'Output does not match goldsample.');
150 $process =
new $test_name;
151 $process->setInstanceVarById(
'DataInput_1',
'YaddaYadda');
152 $process->startWorkflow();
153 $all_triggered =
true;
154 foreach($process->getNodes() as $node)
157 foreach($node->getDetectors() as $detector)
160 if(!$detector->getActivated())
162 $all_triggered =
false;
165 foreach($node->getEmitters() as $emitter)
168 if(!$emitter->getActivated())
170 $all_triggered =
false;
174 $this->assertEquals(
'YaddaYadda', $process->getInstanceVarById(
'DataInput_1'),
'Inputvar was not kept.');
175 $this->assertTrue($all_triggered,
'Not all nodes were triggered.');