ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilCertificatePdfActionTest.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22{
24 {
25 $pdfGenerator = $this->getMockBuilder(ilPdfGenerator::class)
26 ->disableOriginalConstructor()
27 ->onlyMethods(['generateCurrentActiveCertificate'])
28 ->getMock();
29
30 $pdfGenerator->method('generateCurrentActiveCertificate')
31 ->willReturn('Something');
32
33 $ilUtilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
34 ->disableOriginalConstructor()
35 ->getMock();
36
37 $errorHandler = $this->getMockBuilder(ilErrorHandling::class)
38 ->disableOriginalConstructor()
39 ->getMock();
40
41 $pdfAction = new ilCertificatePdfAction(
42 $pdfGenerator,
43 $ilUtilHelper,
44 'translatedError',
45 $errorHandler
46 );
47
48 $result = $pdfAction->createPDF(10, 200);
49
50 $this->assertSame('Something', $result);
51 }
52
53 public function testPdfDownloadAction(): void
54 {
55 $pdfGenerator = $this->getMockBuilder(ilPdfGenerator::class)
56 ->disableOriginalConstructor()
57 ->onlyMethods(['generateCurrentActiveCertificate', 'generateFileName'])
58 ->getMock();
59
60 $pdfGenerator->method('generateCurrentActiveCertificate')
61 ->willReturn('Something');
62
63 $pdfGenerator->method('generateFileName')
64 ->willReturn('some_file_name.pdf');
65
66 $ilUtilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
67 ->disableOriginalConstructor()
68 ->getMock();
69
70 $ilUtilHelper->method('deliverData')
71 ->with(
72 'Something',
73 'some_file_name.pdf',
74 'application/pdf'
75 );
76
77 $errorHandler = $this->getMockBuilder(ilErrorHandling::class)
78 ->disableOriginalConstructor()
79 ->getMock();
80
81 $pdfAction = new ilCertificatePdfAction(
82 $pdfGenerator,
83 $ilUtilHelper,
84 'translatedError',
85 $errorHandler
86 );
87 $result = $pdfAction->downloadPdf(10, 200);
88
89 $this->assertSame('Something', $result);
90 }
91
93 {
94 $pdfGenerator = $this->getMockBuilder(ilPdfGenerator::class)
95 ->disableOriginalConstructor()
96 ->onlyMethods(['generateCurrentActiveCertificate', 'generateFileName'])
97 ->getMock();
98
99 $pdfGenerator->method('generateCurrentActiveCertificate')
100 ->willReturn('Something');
101
102 $pdfGenerator->method('generateFileName')
103 ->willReturn('some_file_name.pdf');
104
105 $ilUtilHelper = $this->getMockBuilder(ilCertificateUtilHelper::class)
106 ->disableOriginalConstructor()
107 ->getMock();
108
109 $ilUtilHelper->method('deliverData')
110 ->with(
111 'Something',
112 'some_file_name.pdf',
113 'application/pdf'
114 )
115 ->willThrowException(new ilRpcClientException(''));
116
117
118 $errorHandler = $this->getMockBuilder(ilErrorHandling::class)
119 ->disableOriginalConstructor()
120 ->onlyMethods(['raiseError'])
121 ->getMock();
122
123 $errorHandler
124 ->expects($this->once())
125 ->method('raiseError');
126
127 $pdfAction = new ilCertificatePdfAction($pdfGenerator, $ilUtilHelper, '', $errorHandler);
128
129 $result = $pdfAction->downloadPdf(10, 200);
130
131 $this->assertSame('', $result);
132 }
133}
Class ilRpcClientException.