ILIAS  trunk Revision v11.0_alpha-1769-g99a433fe2dc
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilLearningSequenceActivationTest.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
22 
24 {
25  public function testCreateObjectMinimal(): void
26  {
27  $obj = new ilLearningSequenceActivation(22);
28 
29  $this->assertInstanceOf(ilLearningSequenceActivation::class, $obj);
30  $this->assertEquals(22, $obj->getRefId());
31  $this->assertFalse($obj->getIsOnline());
32  $this->assertFalse($obj->getEffectiveOnlineStatus());
33  $this->assertNull($obj->getActivationStart());
34  $this->assertNull($obj->getActivationEnd());
35  }
36 
37  public function testCreateObjectMaximal(): void
38  {
39  $start_date = new DateTime('2021-07-21 07:30');
40  $end_date = new DateTime('2021-07-21 07:35');
41 
43  44,
44  true,
45  true,
46  $start_date,
47  $end_date
48  );
49 
50  $this->assertInstanceOf(ilLearningSequenceActivation::class, $obj);
51  $this->assertEquals(44, $obj->getRefId());
52  $this->assertTrue($obj->getIsOnline());
53  $this->assertTrue($obj->getEffectiveOnlineStatus());
54  $this->assertEquals($start_date, $obj->getActivationStart());
55  $this->assertEquals($end_date, $obj->getActivationEnd());
56  }
57 
58  public function testWithOnline(): void
59  {
60  $start_date = new DateTime('2021-07-21 07:44');
61  $end_date = new DateTime('2021-07-21 07:50');
62 
64  555,
65  true,
66  true,
67  $start_date,
68  $end_date
69  );
70 
71  $new_obj = $obj->withIsOnline(false);
72 
73  $this->assertInstanceOf(ilLearningSequenceActivation::class, $obj);
74  $this->assertEquals(555, $obj->getRefId());
75  $this->assertTrue($obj->getIsOnline());
76  $this->assertTrue($obj->getEffectiveOnlineStatus());
77  $this->assertEquals($start_date, $obj->getActivationStart());
78  $this->assertEquals($end_date, $obj->getActivationEnd());
79 
80 
81  $this->assertInstanceOf(ilLearningSequenceActivation::class, $new_obj);
82  $this->assertEquals(555, $new_obj->getRefId());
83  $this->assertFalse($new_obj->getIsOnline());
84  $this->assertTrue($new_obj->getEffectiveOnlineStatus());
85  $this->assertEquals($start_date, $new_obj->getActivationStart());
86  $this->assertEquals($end_date, $new_obj->getActivationEnd());
87  }
88 
89  public function testWithActivationStart(): void
90  {
91  $start_date = new DateTime('2021-07-21 07:44');
92  $end_date = new DateTime('2021-07-21 07:50');
93  $new_date = new DateTime('2021-07-20 08:50');
94 
96  555,
97  true,
98  true,
99  $start_date,
100  $end_date
101  );
102 
103  $new_obj = $obj->withActivationStart($new_date);
104 
105  $this->assertInstanceOf(ilLearningSequenceActivation::class, $obj);
106  $this->assertEquals(555, $obj->getRefId());
107  $this->assertTrue($obj->getIsOnline());
108  $this->assertTrue($obj->getEffectiveOnlineStatus());
109  $this->assertEquals($start_date, $obj->getActivationStart());
110  $this->assertEquals($end_date, $obj->getActivationEnd());
111 
112 
113  $this->assertInstanceOf(ilLearningSequenceActivation::class, $new_obj);
114  $this->assertEquals(555, $new_obj->getRefId());
115  $this->assertTrue($new_obj->getIsOnline());
116  $this->assertTrue($new_obj->getEffectiveOnlineStatus());
117  $this->assertEquals($new_date, $new_obj->getActivationStart());
118  $this->assertEquals($end_date, $new_obj->getActivationEnd());
119  }
120 
121  public function testWithActivationEnd(): void
122  {
123  $start_date = new DateTime('2021-07-21 07:44');
124  $end_date = new DateTime('2021-07-21 07:50');
125  $new_date = new DateTime('2021-07-17 19:50');
126 
127  $obj = new ilLearningSequenceActivation(
128  555,
129  true,
130  true,
131  $start_date,
132  $end_date
133  );
134 
135  $new_obj = $obj->withActivationEnd($new_date);
136 
137  $this->assertInstanceOf(ilLearningSequenceActivation::class, $obj);
138  $this->assertEquals(555, $obj->getRefId());
139  $this->assertTrue($obj->getIsOnline());
140  $this->assertTrue($obj->getEffectiveOnlineStatus());
141  $this->assertEquals($start_date, $obj->getActivationStart());
142  $this->assertEquals($end_date, $obj->getActivationEnd());
143 
144 
145  $this->assertInstanceOf(ilLearningSequenceActivation::class, $new_obj);
146  $this->assertEquals(555, $new_obj->getRefId());
147  $this->assertTrue($new_obj->getIsOnline());
148  $this->assertTrue($new_obj->getEffectiveOnlineStatus());
149  $this->assertEquals($start_date, $new_obj->getActivationStart());
150  $this->assertEquals($new_date, $new_obj->getActivationEnd());
151  }
152 }