ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ilCertificateSettingsCourseFormRepositoryTest.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
25 {
26  public function testSaveSettings(): void
27  {
28  $object = $this->getMockBuilder(ilObjCourse::class)
29  ->disableOriginalConstructor()
30  ->getMock();
31 
32  $object
33  ->expects($this->atLeastOnce())
34  ->method('getId')
35  ->willReturn(100);
36 
37  $language = $this->getMockBuilder(ilLanguage::class)
38  ->disableOriginalConstructor()
39  ->getMock();
40 
41  $controller = $this->getMockBuilder(ilCtrlInterface::class)
42  ->disableOriginalConstructor()
43  ->getMock();
44 
45  $access = $this->getMockBuilder(ilAccess::class)
46  ->disableOriginalConstructor()
47  ->getMock();
48 
49  $toolbar = $this->getMockBuilder(ilToolbarGUI::class)
50  ->disableOriginalConstructor()
51  ->getMock();
52 
53  $placeholderDescriptionObject = $this->getMockBuilder(ilCertificatePlaceholderDescription::class)
54  ->disableOriginalConstructor()
55  ->getMock();
56 
57  $settingsFormFactory = $this->getMockBuilder(ilCertificateSettingsFormRepository::class)
58  ->disableOriginalConstructor()
59  ->getMock();
60 
61  $trackingHelper = $this->getMockBuilder(ilCertificateObjUserTrackingHelper::class)
62  ->disableOriginalConstructor()
63  ->getMock();
64 
65  $objectHelper = $this->getMockBuilder(ilCertificateObjectHelper::class)
66  ->disableOriginalConstructor()
67  ->getMock();
68 
69  $lpHelper = $this->getMockBuilder(ilCertificateObjectLPHelper::class)
70  ->disableOriginalConstructor()
71  ->getMock();
72 
73  $lpMock = $this->getMockBuilder(ilObjectLP::class)
74  ->disableOriginalConstructor()
75  ->getMock();
76 
77  $lpMock->method('getCurrentMode')
78  ->willReturn(100);
79 
80  $lpHelper->method('getInstance')->willReturn($lpMock);
81 
82  $tree = $this->getMockBuilder(ilTree::class)
83  ->disableOriginalConstructor()
84  ->getMock();
85 
86  $setting = $this->getMockBuilder(ilSetting::class)
87  ->disableOriginalConstructor()
88  ->getMock();
89 
90  $setting
91  ->expects($this->atLeastOnce())
92  ->method('set');
93 
95  $object,
96  '/some/where',
97  false,
98  $language,
99  $controller,
100  $access,
101  $toolbar,
102  $placeholderDescriptionObject,
103  $settingsFormFactory,
104  $trackingHelper,
105  $objectHelper,
106  $lpHelper,
107  $tree,
108  $setting
109  );
110 
111  $repository->save(['subitems' => [1, 2, 3]]);
112  }
113 
114  public function testFetchFormFieldData(): void
115  {
116  $object = $this->getMockBuilder(ilObjCourse::class)
117  ->disableOriginalConstructor()
118  ->getMock();
119 
120  $object
121  ->expects($this->atLeastOnce())
122  ->method('getId')
123  ->willReturn(100);
124 
125  $language = $this->getMockBuilder(ilLanguage::class)
126  ->disableOriginalConstructor()
127  ->getMock();
128 
129  $controller = $this->getMockBuilder(ilCtrlInterface::class)
130  ->disableOriginalConstructor()
131  ->getMock();
132 
133  $access = $this->getMockBuilder(ilAccess::class)
134  ->disableOriginalConstructor()
135  ->getMock();
136 
137  $toolbar = $this->getMockBuilder(ilToolbarGUI::class)
138  ->disableOriginalConstructor()
139  ->getMock();
140 
141  $placeholderDescriptionObject = $this->getMockBuilder(ilCertificatePlaceholderDescription::class)
142  ->disableOriginalConstructor()
143  ->getMock();
144 
145  $settingsFormFactory = $this->getMockBuilder(ilCertificateSettingsFormRepository::class)
146  ->disableOriginalConstructor()
147  ->getMock();
148 
149  $settingsFormFactory
150  ->expects($this->atLeastOnce())
151  ->method('fetchFormFieldData')
152  ->willReturn(
153  [
154  'subitems' => [],
155  'something_else' => 'something'
156  ]
157  );
158 
159  $trackingHelper = $this->getMockBuilder(ilCertificateObjUserTrackingHelper::class)
160  ->disableOriginalConstructor()
161  ->getMock();
162 
163  $objectHelper = $this->getMockBuilder(ilCertificateObjectHelper::class)
164  ->disableOriginalConstructor()
165  ->getMock();
166 
167  $lpHelper = $this->getMockBuilder(ilCertificateObjectLPHelper::class)
168  ->disableOriginalConstructor()
169  ->getMock();
170 
171  $tree = $this->getMockBuilder(ilTree::class)
172  ->disableOriginalConstructor()
173  ->getMock();
174 
175  $setting = $this->getMockBuilder(ilSetting::class)
176  ->disableOriginalConstructor()
177  ->getMock();
178 
179  $setting
180  ->expects($this->atLeastOnce())
181  ->method('get')
182  ->willReturn('[1, 2, 3]');
183 
185  $object,
186  '/some/where',
187  false,
188  $language,
189  $controller,
190  $access,
191  $toolbar,
192  $placeholderDescriptionObject,
193  $settingsFormFactory,
194  $trackingHelper,
195  $objectHelper,
196  $lpHelper,
197  $tree,
198  $setting
199  );
200 
201  $result = $repository->fetchFormFieldData('Some Content');
202 
203  $this->assertSame(
204  [
205  'subitems' => [1, 2, 3],
206  'something_else' => 'something'
207  ],
208  $result
209  );
210  }
211 }
Class ilCertificateBaseTestCase.