ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
LSItemTest.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
21use PHPUnit\Framework\TestCase;
22
23class LSItemTest extends TestCase
24{
25 public const TYPE = "type";
26 public const TITLE = "tile";
27 public const DESC = "description";
28 public const ICON_PATH = "icon_path";
29 public const IS_ONLINE = true;
30 public const ORDER_NUMBER = 10;
31 public const REF_ID = 30;
32 public const LP_MODE = 3;
33
35
36 protected function setUp(): void
37 {
38 $this->post_condition = new ilLSPostCondition(666, 'always');
39 }
40
41 public function testCreate(): LSItem
42 {
43 $object = new LSItem(
44 self::TYPE,
45 self::TITLE,
46 self::DESC,
47 self::ICON_PATH,
48 self::IS_ONLINE,
49 self::ORDER_NUMBER,
50 $this->post_condition,
51 self::REF_ID,
52 self::LP_MODE
53 );
54
55 $this->assertEquals(self::TYPE, $object->getType());
56 $this->assertEquals(self::TITLE, $object->getTitle());
57 $this->assertEquals(self::DESC, $object->getDescription());
58 $this->assertEquals(self::ICON_PATH, $object->getIconPath());
59 $this->assertEquals(self::IS_ONLINE, $object->isOnline());
60 $this->assertEquals(self::ORDER_NUMBER, $object->getOrderNumber());
61 $this->assertEquals($object->getPostCondition(), $this->post_condition);
62 $this->assertEquals(self::REF_ID, $object->getRefId());
63 $this->assertEquals(self::LP_MODE, $object->getLPMode());
64
65 return $object;
66 }
67
68 #[\PHPUnit\Framework\Attributes\Depends('testCreate')]
69 public function testWithOnline(LSItem $object): void
70 {
71 $new_obj = $object->withOnline(false);
72
73 $this->assertEquals(self::TYPE, $object->getType());
74 $this->assertEquals(self::TITLE, $object->getTitle());
75 $this->assertEquals(self::DESC, $object->getDescription());
76 $this->assertEquals(self::ICON_PATH, $object->getIconPath());
77 $this->assertEquals(self::IS_ONLINE, $object->isOnline());
78 $this->assertEquals(self::ORDER_NUMBER, $object->getOrderNumber());
79 $this->assertEquals($object->getPostCondition(), $this->post_condition);
80 $this->assertEquals(self::REF_ID, $object->getRefId());
81
82 $this->assertEquals(self::TYPE, $new_obj->getType());
83 $this->assertEquals(self::TITLE, $new_obj->getTitle());
84 $this->assertEquals(self::DESC, $new_obj->getDescription());
85 $this->assertEquals(self::ICON_PATH, $new_obj->getIconPath());
86 $this->assertEquals(false, $new_obj->isOnline());
87 $this->assertEquals(self::ORDER_NUMBER, $new_obj->getOrderNumber());
88 $this->assertEquals($new_obj->getPostCondition(), $this->post_condition);
89 $this->assertEquals(self::REF_ID, $new_obj->getRefId());
90 }
91
92 #[\PHPUnit\Framework\Attributes\Depends('testCreate')]
93 public function testWithOrderNumber(LSItem $object): void
94 {
95 $new_obj = $object->withOrderNumber(20);
96
97 $this->assertEquals(self::TYPE, $object->getType());
98 $this->assertEquals(self::TITLE, $object->getTitle());
99 $this->assertEquals(self::DESC, $object->getDescription());
100 $this->assertEquals(self::ICON_PATH, $object->getIconPath());
101 $this->assertEquals(self::IS_ONLINE, $object->isOnline());
102 $this->assertEquals(self::ORDER_NUMBER, $object->getOrderNumber());
103 $this->assertEquals($object->getPostCondition(), $this->post_condition);
104 $this->assertEquals(self::REF_ID, $object->getRefId());
105
106 $this->assertEquals(self::TYPE, $new_obj->getType());
107 $this->assertEquals(self::TITLE, $new_obj->getTitle());
108 $this->assertEquals(self::DESC, $new_obj->getDescription());
109 $this->assertEquals(self::ICON_PATH, $new_obj->getIconPath());
110 $this->assertEquals(self::IS_ONLINE, $new_obj->isOnline());
111 $this->assertEquals(20, $new_obj->getOrderNumber());
112 $this->assertEquals($new_obj->getPostCondition(), $this->post_condition);
113 $this->assertEquals(self::REF_ID, $new_obj->getRefId());
114 }
115
116 #[\PHPUnit\Framework\Attributes\Depends('testCreate')]
117 public function testWithPostCondition(LSItem $object): void
118 {
119 $pc = new ilLSPostCondition(555, 'always');
120 $new_obj = $object->withPostCondition($pc);
121
122 $this->assertEquals(self::TYPE, $object->getType());
123 $this->assertEquals(self::TITLE, $object->getTitle());
124 $this->assertEquals(self::DESC, $object->getDescription());
125 $this->assertEquals(self::ICON_PATH, $object->getIconPath());
126 $this->assertEquals(self::IS_ONLINE, $object->isOnline());
127 $this->assertEquals(self::ORDER_NUMBER, $object->getOrderNumber());
128 $this->assertEquals($object->getPostCondition(), $this->post_condition);
129 $this->assertEquals(self::REF_ID, $object->getRefId());
130
131 $this->assertEquals(self::TYPE, $new_obj->getType());
132 $this->assertEquals(self::TITLE, $new_obj->getTitle());
133 $this->assertEquals(self::DESC, $new_obj->getDescription());
134 $this->assertEquals(self::ICON_PATH, $new_obj->getIconPath());
135 $this->assertEquals(self::IS_ONLINE, $new_obj->isOnline());
136 $this->assertEquals(self::ORDER_NUMBER, $new_obj->getOrderNumber());
137 $this->assertEquals($new_obj->getPostCondition(), $pc);
138 $this->assertEquals(self::REF_ID, $new_obj->getRefId());
139 }
140}
const IS_ONLINE
Definition: LSItemTest.php:29
testWithOnline(LSItem $object)
Definition: LSItemTest.php:69
const TYPE
Definition: LSItemTest.php:25
ilLSPostCondition $post_condition
Definition: LSItemTest.php:34
testWithOrderNumber(LSItem $object)
Definition: LSItemTest.php:93
const REF_ID
Definition: LSItemTest.php:31
const ORDER_NUMBER
Definition: LSItemTest.php:30
const DESC
Definition: LSItemTest.php:27
testWithPostCondition(LSItem $object)
Definition: LSItemTest.php:117
const ICON_PATH
Definition: LSItemTest.php:28
const LP_MODE
Definition: LSItemTest.php:32
const TITLE
Definition: LSItemTest.php:26
Data holding class LSItem .
Definition: LSItem.php:25
getRefId()
Definition: LSItem.php:93
withPostCondition(ilLSPostCondition $post_condition)
Definition: LSItem.php:117
getIconPath()
Definition: LSItem.php:73
getOrderNumber()
Definition: LSItem.php:83
getType()
Definition: LSItem.php:58
getDescription()
Definition: LSItem.php:68
withOrderNumber(int $order_number)
Definition: LSItem.php:110
getTitle()
Definition: LSItem.php:63
withOnline(bool $online)
Definition: LSItem.php:103
getPostCondition()
Definition: LSItem.php:88
isOnline()
Definition: LSItem.php:78
A PostCondition does restrict the progression of a user through the learning sequence.