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