ILIAS  release_8 Revision v8.25-1-g13de6a5eca6
ilCertificateTemplateImportActionTest.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
27{
29 {
30 $placeholderDescriptionObject = $this->getMockBuilder(ilCertificatePlaceholderDescription::class)
31 ->getMock();
32
33 $logger = $this->getMockBuilder(ilLogger::class)
34 ->disableOriginalConstructor()
35 ->getMock();
36
37 $web_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
38 $tmp_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
39 $tmp_fs
40 ->expects($this->once())
41 ->method('listContents')
42 ->willReturn([
43 new Metadata('certificate.xml', 'file'),
44 new Metadata('background.jpg', 'file'),
45 ]);
46 $web_fs
47 ->expects($this->once())
48 ->method('listContents')
49 ->willReturn([
50 new Metadata('certificate.xml', 'file'),
51 new Metadata('background.jpg', 'file'),
52 ]);
53
54 $templateRepository = $this->getMockBuilder(ilCertificateTemplateRepository::class)->getMock();
55
56 $objectHelper = $this->getMockBuilder(ilCertificateObjectHelper::class)
57 ->getMock();
58
59 $objectHelper->method('lookupType')
60 ->willReturn('crs');
61
62 $utilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
63 ->disableOriginalConstructor()
64 ->getMock();
65
66 $utilHelper
67 ->method('moveUploadedFile')
68 ->willReturn(true);
69
70 $utilHelper
71 ->expects($this->once())
72 ->method('unzip');
73
74 $utilHelper
75 ->expects($this->once())
76 ->method('convertImage');
77
78 $database = $this->getMockBuilder(ilDBInterface::class)
79 ->disableOriginalConstructor()
80 ->getMock();
81
83 100,
84 'some/path/certificate.xml',
85 $placeholderDescriptionObject,
86 $logger,
87 $web_fs,
88 $tmp_fs,
89 $templateRepository,
90 $objectHelper,
91 $utilHelper,
92 $database,
93 new ilCertificateBackgroundImageFileService('/some/path', $web_fs, '/some/web/dir')
94 );
95
96 $result = $action->import(
97 'someZipFile.zip',
98 'some/path/',
99 'some/web/path',
100 'some/storage/path',
101 'v5.4.0',
102 'someInstallationId'
103 );
104
105 $this->assertTrue($result);
106 }
107
109 {
110 $placeholderDescriptionObject = $this->getMockBuilder(ilCertificatePlaceholderDescription::class)
111 ->getMock();
112
113 $logger = $this->getMockBuilder(ilLogger::class)
114 ->disableOriginalConstructor()
115 ->getMock();
116
117 $web_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
118 $web_fs
119 ->expects($this->once())
120 ->method('listContents')
121 ->willReturn([
122 new Metadata('certificate.xml', 'file')
123 ]);
124 $tmp_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
125 $tmp_fs
126 ->expects($this->once())
127 ->method('listContents')
128 ->willReturn([
129 new Metadata('certificate.xml', 'file')
130 ]);
131
132 $templateRepository = $this->getMockBuilder(ilCertificateTemplateRepository::class)->getMock();
133
134 $objectHelper = $this->getMockBuilder(ilCertificateObjectHelper::class)
135 ->getMock();
136
137 $objectHelper->method('lookupType')
138 ->willReturn('crs');
139
140 $utilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
141 ->disableOriginalConstructor()
142 ->getMock();
143
144 $utilHelper
145 ->method('moveUploadedFile')
146 ->willReturn(true);
147
148 $utilHelper
149 ->expects($this->once())
150 ->method('unzip');
151
152 $database = $this->getMockBuilder(ilDBInterface::class)
153 ->disableOriginalConstructor()
154 ->getMock();
155
157 100,
158 'some/path/certificate.xml',
159 $placeholderDescriptionObject,
160 $logger,
161 $web_fs,
162 $tmp_fs,
163 $templateRepository,
164 $objectHelper,
165 $utilHelper,
166 $database,
167 new ilCertificateBackgroundImageFileService('/some/path', $web_fs, '/some/web/dir')
168 );
169
170 $result = $action->import(
171 'someZipFile.zip',
172 'some/path/',
173 'some/web/path',
174 'some/storage/path',
175 'v5.4.0',
176 'someInstallationId'
177 );
178
179 $this->assertTrue($result);
180 }
181
182 public function testNoXmlFileInUplodadZipFolder(): void
183 {
184 $placeholderDescriptionObject = $this->getMockBuilder(ilCertificatePlaceholderDescription::class)
185 ->getMock();
186
187 $logger = $this->getMockBuilder(ilLogger::class)
188 ->disableOriginalConstructor()
189 ->getMock();
190
191 $web_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
192 $tmp_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
193
194 $templateRepository = $this->getMockBuilder(ilCertificateTemplateRepository::class)->getMock();
195
196 $objectHelper = $this->getMockBuilder(ilCertificateObjectHelper::class)
197 ->getMock();
198
199 $utilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
200 ->disableOriginalConstructor()
201 ->getMock();
202
203 $utilHelper
204 ->method('moveUploadedFile')
205 ->willReturn(true);
206
207 $utilHelper
208 ->expects($this->once())
209 ->method('unzip');
210
211 $database = $this->getMockBuilder(ilDBInterface::class)
212 ->disableOriginalConstructor()
213 ->getMock();
214
215 $tmp_fs
216 ->expects($this->once())
217 ->method('listContents')
218 ->willReturn([]);
219
221 100,
222 'some/path/certificate.xml',
223 $placeholderDescriptionObject,
224 $logger,
225 $web_fs,
226 $tmp_fs,
227 $templateRepository,
228 $objectHelper,
229 $utilHelper,
230 $database,
231 new ilCertificateBackgroundImageFileService('/some/path', $web_fs, '/some/web/dir')
232 );
233
234 $result = $action->import(
235 'someZipFile.zip',
236 'some/path/',
237 'some/web/path',
238 'some/storage/path',
239 'v5.4.0',
240 'someInstallationId'
241 );
242
243 $this->assertFalse($result);
244 }
245
246 public function testZipfileCouldNoBeMoved(): void
247 {
248 $placeholderDescriptionObject = $this->getMockBuilder(ilCertificatePlaceholderDescription::class)
249 ->disableOriginalConstructor()
250 ->getMock();
251
252 $logger = $this->getMockBuilder(ilLogger::class)
253 ->disableOriginalConstructor()
254 ->getMock();
255
256 $web_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
257 $tmp_fs = $this->createMock(ILIAS\Filesystem\Filesystem::class);
258
259 $templateRepository = $this->getMockBuilder(ilCertificateTemplateRepository::class)->getMock();
260
261 $objectHelper = $this->getMockBuilder(ilCertificateObjectHelper::class)
262 ->getMock();
263
264 $utilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
265 ->disableOriginalConstructor()
266 ->getMock();
267
268 $utilHelper
269 ->method('moveUploadedFile')
270 ->willReturn(false);
271
272 $database = $this->getMockBuilder(ilDBInterface::class)
273 ->disableOriginalConstructor()
274 ->getMock();
275
277 100,
278 'some/path/certificate.xml',
279 $placeholderDescriptionObject,
280 $logger,
281 $web_fs,
282 $tmp_fs,
283 $templateRepository,
284 $objectHelper,
285 $utilHelper,
286 $database,
287 new ilCertificateBackgroundImageFileService('/some/path', $web_fs, '/some/web/dir')
288 );
289
290 $result = $action->import(
291 'someZipFile.zip',
292 'some/path/',
293 'some/web/path',
294 'some/storage/path',
295 'v5.4.0',
296 'someInstallationId'
297 );
298
299 $this->assertFalse($result);
300 }
301}
Class ilCertificateBaseTestCase.
Class FlySystemFileAccessTest \Provider\FlySystem @runTestsInSeparateProcesses @preserveGlobalState d...
Class ChatMainBarProvider \MainMenu\Provider.