ILIAS  trunk Revision v11.0_alpha-2662-g519ff7d528f
LSItemTest.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
22 
23 class 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 }
getTitle()
Definition: LSItem.php:63
getOrderNumber()
Definition: LSItem.php:83
getPostCondition()
Definition: LSItem.php:88
const REF_ID
Definition: LSItemTest.php:31
getDescription()
Definition: LSItem.php:68
getRefId()
Definition: LSItem.php:93
withOrderNumber(int $order_number)
Definition: LSItem.php:110
const IS_ONLINE
Definition: LSItemTest.php:29
getIconPath()
Definition: LSItem.php:73
testWithOrderNumber(LSItem $object)
Definition: LSItemTest.php:93
isOnline()
Definition: LSItem.php:78
const TITLE
Definition: LSItemTest.php:26
Data holding class LSItem .
Definition: LSItem.php:24
const TYPE
Definition: LSItemTest.php:25
ilLSPostCondition $post_condition
Definition: LSItemTest.php:34
withPostCondition(ilLSPostCondition $post_condition)
Definition: LSItem.php:117
const DESC
Definition: LSItemTest.php:27
A PostCondition does restrict the progression of a user through the learning sequence.
withOnline(bool $online)
Definition: LSItem.php:103
testWithOnline(LSItem $object)
Definition: LSItemTest.php:69
testWithPostCondition(LSItem $object)
Definition: LSItemTest.php:117
const ICON_PATH
Definition: LSItemTest.php:28
getType()
Definition: LSItem.php:58
const ORDER_NUMBER
Definition: LSItemTest.php:30
const LP_MODE
Definition: LSItemTest.php:32