ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
ilDataDetectorTest Class Reference

ilDataDetectorTest is part of the petri net based workflow engine. More...

+ Inheritance diagram for ilDataDetectorTest:
+ Collaboration diagram for ilDataDetectorTest:

Public Member Functions

 setUp ()
 
 tearDown ()
 
 testConstructorValidContext ()
 
 testSetDetectorState ()
 
 testTrigger ()
 
 testGetContext ()
 

Additional Inherited Members

- Protected Member Functions inherited from ilWorkflowEngineBaseTest
 setGlobalVariable ($name, $value)
 
 setUp ()
 

Detailed Description

ilDataDetectorTest is part of the petri net based workflow engine.

This class holds all tests for the class detectors/class.ilDataDetector

Author
Maximilian Becker mbeck.nosp@m.er@d.nosp@m.ataba.nosp@m.y.de
Version
$Id$

/

Definition at line 15 of file ilDataDetectorTest.php.

Member Function Documentation

◆ setUp()

ilDataDetectorTest::setUp ( )

Reimplemented from ilWorkflowEngineBaseTest.

Definition at line 17 of file ilDataDetectorTest.php.

17 : void
18 {
20
21 // Empty workflow.
22 require_once './Services/WorkflowEngine/classes/workflows/class.ilEmptyWorkflow.php';
23 $this->workflow = new ilEmptyWorkflow();
24
25 // Basic node
26 require_once './Services/WorkflowEngine/classes/nodes/class.ilBasicNode.php';
27 $this->node = new ilBasicNode($this->workflow);
28
29 // Wiring up so the node is attached to the workflow.
30 $this->workflow->addNode($this->node);
31
32 require_once './Services/WorkflowEngine/classes/detectors/class.ilDataDetector.php';
33 }
@noinspection PhpIncludeInspection
@noinspection PhpIncludeInspection
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc

References ILIAS\GlobalScreen\Provider\__construct().

+ Here is the call graph for this function:

◆ tearDown()

ilDataDetectorTest::tearDown ( )

Definition at line 35 of file ilDataDetectorTest.php.

35 : void
36 {
37 global $DIC;
38
39 if (isset($DIC['ilSetting'])) {
40 $DIC['ilSetting']->delete('IL_PHPUNIT_TEST_TIME');
41 $DIC['ilSetting']->delete('IL_PHPUNIT_TEST_MICROTIME');
42 }
43 }
$DIC
Definition: xapitoken.php:46

References $DIC.

◆ testConstructorValidContext()

ilDataDetectorTest::testConstructorValidContext ( )

Definition at line 45 of file ilDataDetectorTest.php.

46 {
47 // Act
48 $detector = new ilDataDetector($this->node);
49
50 // Assert
51 // No exception - good
52 $this->assertTrue(
53 true,
54 'Construction failed with valid context passed to constructor.'
55 );
56 }
@noinspection PhpIncludeInspection

◆ testGetContext()

ilDataDetectorTest::testGetContext ( )

Definition at line 119 of file ilDataDetectorTest.php.

120 {
121 // Arrange
122 $detector = new ilDataDetector($this->node);
123
124 // Act
125 $actual = $detector->getContext();
126
127 // Assert
128 if ($actual === $this->node) {
129 $this->assertEquals($actual, $this->node);
130 } else {
131 $this->assertTrue(false, 'Context not identical.');
132 }
133 }

◆ testSetDetectorState()

ilDataDetectorTest::testSetDetectorState ( )

Definition at line 58 of file ilDataDetectorTest.php.

59 {
60 // Arrange
61 $workflow = new ilEmptyWorkflow();
62 $node = new ilBasicNode($workflow);
63 $detector = new ilDataDetector($node);
64 $workflow->addNode($node);
65
66
67 // Act
68 $detector->setDetectorState(true);
69
70
71 // Assert
72 $valid_state = true;
73
74 if (!$detector->getDetectorState()) {
75 $valid_state = false;
76 }
77
78 if ($node->isActive()) {
79 // With this single detector satisfied, the
80 // parent node should have transitted and
81 // this would result in it being inactive
82 // afterwards.
83 $valid_state = false;
84 }
85
86 $this->assertTrue($valid_state, 'Invalid state after setting of detector state.');
87 }

◆ testTrigger()

ilDataDetectorTest::testTrigger ( )

Definition at line 89 of file ilDataDetectorTest.php.

90 {
91 // Arrange
92 $workflow = new ilEmptyWorkflow();
93 $node = new ilBasicNode($workflow);
94 $detector = new ilDataDetector($node);
95 $workflow->addNode($node);
96
97
98 // Act
99 $detector->trigger(null);
100
101 // Assert
102 $valid_state = true;
103
104 if (!$detector->getDetectorState()) {
105 $valid_state = false;
106 }
107
108 if ($node->isActive()) {
109 // With this single detector satisfied, the
110 // parent node should have transitted and
111 // this would result in it being inactive
112 // afterwards.
113 $valid_state = false;
114 }
115
116 $this->assertTrue($valid_state, 'Invalid state after setting of detector state.');
117 }

The documentation for this class was generated from the following file: