ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ilXlsFoParserTest Class Reference
+ Inheritance diagram for ilXlsFoParserTest:
+ Collaboration diagram for ilXlsFoParserTest:

Public Member Functions

 testParseWithNonCustomPageFormatting ()
 
 testParseButXmlCheckerFindsAnError ()
 
 testParseWithCustomPageFormatting ()
 
 testCommasWillBeConvertedToPointInDecimalSepartor ()
 

Detailed Description

Author
Niels Theen nthee.nosp@m.n@da.nosp@m.tabay.nosp@m..de

Definition at line 7 of file ilXlsFoParserTest.php.

Member Function Documentation

◆ testCommasWillBeConvertedToPointInDecimalSepartor()

ilXlsFoParserTest::testCommasWillBeConvertedToPointInDecimalSepartor ( )

Definition at line 273 of file ilXlsFoParserTest.php.

274  {
275  $formData = array(
276  'certificate_text' => '<xml> Some Context </xml>',
277  'margin_body' => array(
278  'top' => '1cm',
279  'right' => '2cm',
280  'bottom' => '3cm',
281  'left' => '4cm'
282  ),
283  'pageformat' => 'custom',
284  'pagewidth' => '210mm',
285  'pageheight' => '297mm'
286  );
287 
288  $settings = $this->getMockBuilder('ilSetting')
289  ->disableOriginalConstructor()
290  ->getMock();
291 
292  $settings->method('get')
293  ->willReturn('Something');
294 
295  $pageFormats = $this->getMockBuilder('ilPageFormats')
296  ->disableOriginalConstructor()
297  ->getMock();
298 
299  $pageFormats->method('fetchPageFormats')
300  ->willReturn(array(
301  'a4' => array(
302  'name' => 'A4',
303  'value' => 'a4',
304  'width' => '21,0mm',
305  'height' => '29,7mm'
306  ),
307  ));
308 
309  $xmlChecker = $this->getMockBuilder('ilXMLChecker')
310  ->getMock();
311 
312  $utilHelper = $this->getMockBuilder('ilCertificateUtilHelper')
313  ->getMock();
314 
315  $utilHelper->method('stripSlashes')
316  ->willReturnOnConsecutiveCalls(
317  '29,7mm',
318  '21,0mm',
319  '1cm',
320  '2cm',
321  '3cm',
322  '4cm'
323  );
324 
325  $xlstProcess = $this->getMockBuilder('ilCertificateXlstProcess')
326  ->getMock();
327 
328  $xlstProcess->method('process')
329  ->with(
330  array(
331  '/_xml' => '<html><body><xml> Some Context </xml></body></html>',
332  '/_xsl' => '<xml>Some XLS Content</xml>'
333  ),
334  array(
335  'pageheight' => '29.7mm',
336  'pagewidth' => '21.0mm',
337  'backgroundimage' => '[BACKGROUND_IMAGE]',
338  'marginbody' => '1cm 2cm 3cm 4cm'
339  )
340  )
341  ->willReturn('Something Processed');
342 
343  $language = $this->getMockBuilder('ilLanguage')
344  ->disableOriginalConstructor()
345  ->getMock();
346 
347  $certificateXlsFileLoader = $this->getMockBuilder('ilCertificateXlsFileLoader')
348  ->getMock();
349 
350  $certificateXlsFileLoader->method('getXlsCertificateContent')
351  ->willReturn('<xml>Some XLS Content</xml>');
352 
353  $xlsFoParser = new ilXlsFoParser(
354  $settings,
355  $pageFormats,
356  $xmlChecker,
357  $utilHelper,
358  $xlstProcess,
359  $language,
360  $certificateXlsFileLoader
361  );
362 
363  $output = $xlsFoParser->parse($formData);
364 
365  $this->assertEquals('Something Processed', $output);
366  }

◆ testParseButXmlCheckerFindsAnError()

ilXlsFoParserTest::testParseButXmlCheckerFindsAnError ( )

Definition at line 105 of file ilXlsFoParserTest.php.

106  {
107  $this->expectException(\Exception::class);
108 
109  $formData = array(
110  'certificate_text' => '<xml> Some Context </xml>',
111  'margin_body' => array(
112  'top' => '1cm',
113  'right' => '2cm',
114  'bottom' => '3cm',
115  'left' => '4cm'
116  ),
117  'pageformat' => 'custom'
118  );
119 
120  $settings = $this->getMockBuilder('ilSetting')
121  ->disableOriginalConstructor()
122  ->getMock();
123 
124  $settings->method('get')
125  ->willReturn('Something');
126 
127  $pageFormats = $this->getMockBuilder('ilPageFormats')
128  ->disableOriginalConstructor()
129  ->getMock();
130 
131  $pageFormats->method('fetchPageFormats')
132  ->willReturn(array(
133  'a4' => array(
134  'name' => 'A4',
135  'value' => 'a4',
136  'width' => '210mm',
137  'height' => '297mm'
138  ),
139  ));
140 
141  $xmlChecker = $this->getMockBuilder('ilXMLChecker')
142  ->getMock();
143 
144  $xmlChecker->method('hasError')
145  ->willReturn(true);
146 
147  $utilHelper = $this->getMockBuilder('ilCertificateUtilHelper')
148  ->getMock();
149 
150  $xlstProcess = $this->getMockBuilder('ilCertificateXlstProcess')
151  ->getMock();
152 
153  $language = $this->getMockBuilder('ilLanguage')
154  ->disableOriginalConstructor()
155  ->getMock();
156 
157  $certificateXlsFileLoader = $this->getMockBuilder('ilCertificateXlsFileLoader')
158  ->getMock();
159 
160  $certificateXlsFileLoader->method('getXlsCertificateContent')
161  ->willReturn('<xml>Some XLS Content</xml>');
162 
163  $xlsFoParser = new ilXlsFoParser(
164  $settings,
165  $pageFormats,
166  $xmlChecker,
167  $utilHelper,
168  $xlstProcess,
169  $language,
170  $certificateXlsFileLoader
171  );
172 
173  $xlsFoParser->parse($formData);
174 
175  $this->fail();
176  }

◆ testParseWithCustomPageFormatting()

ilXlsFoParserTest::testParseWithCustomPageFormatting ( )

Definition at line 178 of file ilXlsFoParserTest.php.

179  {
180  $formData = array(
181  'certificate_text' => '<xml> Some Context </xml>',
182  'margin_body' => array(
183  'top' => '1cm',
184  'right' => '2cm',
185  'bottom' => '3cm',
186  'left' => '4cm'
187  ),
188  'pageformat' => 'custom',
189  'pagewidth' => '210mm',
190  'pageheight' => '297mm'
191  );
192 
193  $settings = $this->getMockBuilder('ilSetting')
194  ->disableOriginalConstructor()
195  ->getMock();
196 
197  $settings->method('get')
198  ->willReturn('Something');
199 
200  $pageFormats = $this->getMockBuilder('ilPageFormats')
201  ->disableOriginalConstructor()
202  ->getMock();
203 
204  $pageFormats->method('fetchPageFormats')
205  ->willReturn(array(
206  'a4' => array(
207  'name' => 'A4',
208  'value' => 'a4',
209  'width' => '210mm',
210  'height' => '297mm'
211  ),
212  ));
213 
214  $xmlChecker = $this->getMockBuilder('ilXMLChecker')
215  ->getMock();
216 
217  $utilHelper = $this->getMockBuilder('ilCertificateUtilHelper')
218  ->getMock();
219 
220  $utilHelper->method('stripSlashes')
221  ->willReturnOnConsecutiveCalls(
222  '297mm',
223  '210mm',
224  '1cm',
225  '2cm',
226  '3cm',
227  '4cm'
228  );
229 
230  $xlstProcess = $this->getMockBuilder('ilCertificateXlstProcess')
231  ->getMock();
232 
233  $xlstProcess->method('process')
234  ->with(
235  array(
236  '/_xml' => '<html><body><xml> Some Context </xml></body></html>',
237  '/_xsl' => '<xml>Some XLS Content</xml>'
238  ),
239  array(
240  'pageheight' => '297mm',
241  'pagewidth' => '210mm',
242  'backgroundimage' => '[BACKGROUND_IMAGE]',
243  'marginbody' => '1cm 2cm 3cm 4cm'
244  )
245  )
246  ->willReturn('Something Processed');
247 
248  $language = $this->getMockBuilder('ilLanguage')
249  ->disableOriginalConstructor()
250  ->getMock();
251 
252  $certificateXlsFileLoader = $this->getMockBuilder('ilCertificateXlsFileLoader')
253  ->getMock();
254 
255  $certificateXlsFileLoader->method('getXlsCertificateContent')
256  ->willReturn('<xml>Some XLS Content</xml>');
257 
258  $xlsFoParser = new ilXlsFoParser(
259  $settings,
260  $pageFormats,
261  $xmlChecker,
262  $utilHelper,
263  $xlstProcess,
264  $language,
265  $certificateXlsFileLoader
266  );
267 
268  $output = $xlsFoParser->parse($formData);
269 
270  $this->assertEquals('Something Processed', $output);
271  }

◆ testParseWithNonCustomPageFormatting()

ilXlsFoParserTest::testParseWithNonCustomPageFormatting ( )

Definition at line 9 of file ilXlsFoParserTest.php.

10  {
11  $formData = array(
12  'certificate_text' => '<xml> Some Context </xml>',
13  'margin_body' => array(
14  'top' => '1cm',
15  'right' => '2cm',
16  'bottom' => '3cm',
17  'left' => '4cm'
18  ),
19  'pageformat' => 'a4'
20  );
21 
22  $settings = $this->getMockBuilder('ilSetting')
23  ->disableOriginalConstructor()
24  ->getMock();
25 
26  $settings->method('get')
27  ->willReturn('Something');
28 
29  $pageFormats = $this->getMockBuilder('ilPageFormats')
30  ->disableOriginalConstructor()
31  ->getMock();
32 
33  $pageFormats->method('fetchPageFormats')
34  ->willReturn(array(
35  'a4' => array(
36  'name' => 'A4',
37  'value' => 'a4',
38  'width' => '210mm',
39  'height' => '297mm'
40  ),
41  ));
42 
43  $xmlChecker = $this->getMockBuilder('ilXMLChecker')
44  ->getMock();
45 
46  $utilHelper = $this->getMockBuilder('ilCertificateUtilHelper')
47  ->getMock();
48 
49  $utilHelper->method('stripSlashes')
50  ->willReturnOnConsecutiveCalls(
51  '297mm',
52  '210mm',
53  '1cm',
54  '2cm',
55  '3cm',
56  '4cm'
57  );
58 
59  $xlstProcess = $this->getMockBuilder('ilCertificateXlstProcess')
60  ->getMock();
61 
62  $xlstProcess->method('process')
63  ->with(
64  array(
65  '/_xml' => '<html><body><xml> Some Context </xml></body></html>',
66  '/_xsl' => '<xml>Some XLS Content</xml>'
67  ),
68  array(
69  'pageheight' => '297mm',
70  'pagewidth' => '210mm',
71  'backgroundimage' => '[BACKGROUND_IMAGE]',
72  'marginbody' => '1cm 2cm 3cm 4cm'
73  )
74  )
75  ->willReturn('Something Processed');
76 
77  $language = $this->getMockBuilder('ilLanguage')
78  ->disableOriginalConstructor()
79  ->getMock();
80 
81  $certificateXlsFileLoader = $this->getMockBuilder('ilCertificateXlsFileLoader')
82  ->getMock();
83 
84  $certificateXlsFileLoader->method('getXlsCertificateContent')
85  ->willReturn('<xml>Some XLS Content</xml>');
86 
87  $xlsFoParser = new ilXlsFoParser(
88  $settings,
89  $pageFormats,
90  $xmlChecker,
91  $utilHelper,
92  $xlstProcess,
93  $language,
94  $certificateXlsFileLoader
95  );
96 
97  $output = $xlsFoParser->parse($formData);
98 
99  $this->assertEquals('Something Processed', $output);
100  }

The documentation for this class was generated from the following file: