ILIAS  trunk Revision v12.0_alpha-1221-g4e438232683
ilMailMimeTest Class Reference
+ Inheritance diagram for ilMailMimeTest:
+ Collaboration diagram for ilMailMimeTest:

Public Member Functions

 testMimMailDelegatesEmailDeliveryToThePassedTransporter ()
 
 testMimMailDelegatesEmailDeliveryToDefaultTransport ()
 
 testTransportFactoryWillReturnNullTransportIfExternalEmailDeliveryIsDisabled ()
 
 testTransportFactoryWillReturnSmtpTransportIfEnabled ()
 
 testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled ()
 
 testFactoryWillReturnSystemSenderForAnonymousUserId ()
 
 testFactoryWillReturnSystemSenderWhenExplicitlyRequested ()
 
 testFactoryWillReturnUserSenderForExistingUserId ()
 
 testFactoryWillReturnUserSenderWhenExplicitlyRequested ()
 

Protected Member Functions

 setUp ()
 
 getUserById (int $usr_id)
 
- Protected Member Functions inherited from ilMailBaseTestCase
 brutallyTrimHTML (string $html)
 
 setUp ()
 
 tearDown ()
 
 setGlobalVariable (string $name, $value)
 

Private Attributes

const int USER_ID = 6
 

Detailed Description

Definition at line 24 of file ilMailMimeTest.php.

Member Function Documentation

◆ getUserById()

ilMailMimeTest::getUserById ( int  $usr_id)
protected

Definition at line 178 of file ilMailMimeTest.php.

178 : ilObjUser
179 {
180 $user = $this->getMockBuilder(ilObjUser::class)
181 ->disableOriginalConstructor()
182 ->onlyMethods(['getId'])
183 ->getMock();
184 $user->method('getId')->willReturn($usr_id);
185
186 return $user;
187 }
User class.

Referenced by setUp().

+ Here is the caller graph for this function:

◆ setUp()

ilMailMimeTest::setUp ( )
protected

Reimplemented from ilMailBaseTestCase.

Definition at line 28 of file ilMailMimeTest.php.

28 : void
29 {
31 ilMailMimeSenderUserById::addUserToCache(self::USER_ID, $this->getUserById(self::USER_ID));
32
33 parent::setUp();
34 }
static addUserToCache(int $usr_id, ilObjUser $user)
getUserById(int $usr_id)
static setDefaultTransport(?ilMailMimeTransport $transport)

References ilMailMimeSenderUserById\addUserToCache(), getUserById(), and ilMimeMail\setDefaultTransport().

+ Here is the call graph for this function:

◆ testFactoryWillReturnSystemSenderForAnonymousUserId()

ilMailMimeTest::testFactoryWillReturnSystemSenderForAnonymousUserId ( )

Definition at line 154 of file ilMailMimeTest.php.

154 : void
155 {
156 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
157 'set',
158 'get',
159 ])->getMock();
160 $template_engine_factory = $this->createMock(TemplateEngineFactoryInterface::class);
161
162 $factory = new ilMailMimeSenderFactory($settings, $template_engine_factory);
163 $this->assertInstanceOf(ilMailMimeSenderSystem::class, $factory->getSenderByUsrId(ANONYMOUS_USER_ID));
164 }
const ANONYMOUS_USER_ID
Definition: constants.php:27

References ANONYMOUS_USER_ID.

◆ testFactoryWillReturnSystemSenderWhenExplicitlyRequested()

ilMailMimeTest::testFactoryWillReturnSystemSenderWhenExplicitlyRequested ( )

Definition at line 166 of file ilMailMimeTest.php.

166 : void
167 {
168 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
169 'set',
170 'get',
171 ])->getMock();
172 $template_engine_factory = $this->createMock(TemplateEngineFactoryInterface::class);
173
174 $factory = new ilMailMimeSenderFactory($settings, $template_engine_factory);
175 $this->assertInstanceOf(ilMailMimeSenderSystem::class, $factory->system());
176 }

◆ testFactoryWillReturnUserSenderForExistingUserId()

ilMailMimeTest::testFactoryWillReturnUserSenderForExistingUserId ( )

Definition at line 189 of file ilMailMimeTest.php.

189 : void
190 {
191 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
192 'set',
193 'get',
194 ])->getMock();
195 $template_engine_factory = $this->createMock(TemplateEngineFactoryInterface::class);
196
197 $factory = new ilMailMimeSenderFactory($settings, $template_engine_factory);
198 $this->assertInstanceOf(ilMailMimeSenderUser::class, $factory->getSenderByUsrId(self::USER_ID));
199 }

◆ testFactoryWillReturnUserSenderWhenExplicitlyRequested()

ilMailMimeTest::testFactoryWillReturnUserSenderWhenExplicitlyRequested ( )

Definition at line 201 of file ilMailMimeTest.php.

201 : void
202 {
203 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
204 'set',
205 'get',
206 ])->getMock();
207 $template_engine_factory = $this->createMock(TemplateEngineFactoryInterface::class);
208
209 $factory = new ilMailMimeSenderFactory($settings, $template_engine_factory);
210 $this->assertInstanceOf(ilMailMimeSenderUser::class, $factory->user(self::USER_ID));
211 }

◆ testMimMailDelegatesEmailDeliveryToDefaultTransport()

ilMailMimeTest::testMimMailDelegatesEmailDeliveryToDefaultTransport ( )

Definition at line 64 of file ilMailMimeTest.php.

64 : void
65 {
66 $default_transport = $this->getMockBuilder(ilMailMimeTransport::class)->getMock();
67 $default_transport->expects($this->once())->method('send');
68
69 $transport_factory = $this->getMockBuilder(ilMailMimeTransportFactory::class)->disableOriginalConstructor()->getMock();
70 $transport_factory->method('getTransport')->willReturn($default_transport);
71 $this->setGlobalVariable('mail.mime.transport.factory', $transport_factory);
72
73 $refinery = $this->getMockBuilder(Factory::class)->disableOriginalConstructor()->getMock();
74 $this->setGlobalVariable('refinery', $refinery);
75
76 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
77 'set',
78 'get',
79 ])->getMock();
80 $this->setGlobalVariable('ilSetting', $settings);
81
82 $refinery = $this->getMockBuilder(\ILIAS\Refinery\Factory::class)->disableOriginalConstructor()->getMock();
83 $this->setGlobalVariable('refinery', $refinery);
84
85 $mail = new ilMimeMail();
86 $mail->Send();
87 }
setGlobalVariable(string $name, $value)
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.

References ILIAS\UI\examples\Layout\Page\Mail\$refinery, and ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

◆ testMimMailDelegatesEmailDeliveryToThePassedTransporter()

ilMailMimeTest::testMimMailDelegatesEmailDeliveryToThePassedTransporter ( )

Definition at line 36 of file ilMailMimeTest.php.

36 : void
37 {
38 $default_transport = $this->getMockBuilder(ilMailMimeTransport::class)->disableOriginalConstructor()->getMock();
39 $default_transport->expects($this->never())->method('send');
40
41 $transport = $this->getMockBuilder(ilMailMimeTransport::class)->getMock();
42 $transport->expects($this->once())->method('send');
43
44 $transport_factory = $this->getMockBuilder(ilMailMimeTransportFactory::class)->disableOriginalConstructor()->getMock();
45 $transport_factory->method('getTransport')->willReturn($default_transport);
46 $this->setGlobalVariable('mail.mime.transport.factory', $transport_factory);
47
48 $refinery = $this->getMockBuilder(Factory::class)->disableOriginalConstructor()->getMock();
49 $this->setGlobalVariable('refinery', $refinery);
50
51 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
52 'set',
53 'get',
54 ])->getMock();
55 $this->setGlobalVariable('ilSetting', $settings);
56
57 $refinery = $this->getMockBuilder(\ILIAS\Refinery\Factory::class)->disableOriginalConstructor()->getMock();
58 $this->setGlobalVariable('refinery', $refinery);
59
60 $mail = new ilMimeMail();
61 $mail->Send($transport);
62 }

References ILIAS\UI\examples\Layout\Page\Mail\$refinery, and ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnNullTransportIfExternalEmailDeliveryIsDisabled()

ilMailMimeTest::testTransportFactoryWillReturnNullTransportIfExternalEmailDeliveryIsDisabled ( )

Definition at line 89 of file ilMailMimeTest.php.

89 : void
90 {
91 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
92 'set',
93 'get',
94 ])->getMock();
95 $settings->method('get')->willReturnCallback(static function ($key): ?string {
96 return (string) ('mail_allow_external' !== $key);
97 });
98 $this->setGlobalVariable('ilSetting', $settings);
99
100 $event_handler = $this->getMockBuilder(ilAppEventHandler::class)->disableOriginalConstructor()->onlyMethods([
101 'raise',
102 ])->getMock();
103
104 $factory = new ilMailMimeTransportFactory($settings, $event_handler);
105 $this->assertInstanceOf(ilMailMimeTransportNull::class, $factory->getTransport());
106 }

References ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled()

ilMailMimeTest::testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled ( )

Definition at line 125 of file ilMailMimeTest.php.

125 : void
126 {
127 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
128 'set',
129 'get',
130 ])->getMock();
131
132 $settings->method('get')->willReturnCallback(static function ($key): ?string {
133 if ('mail_allow_external' === $key) {
134 return '1';
135 }
136
137
138 if ('mail_smtp_status' === $key) {
139 return '0';
140 }
141
142 return '1';
143 });
144 $this->setGlobalVariable('ilSetting', $settings);
145
146 $event_handler = $this->getMockBuilder(ilAppEventHandler::class)->disableOriginalConstructor()->onlyMethods([
147 'raise',
148 ])->getMock();
149
150 $factory = new ilMailMimeTransportFactory($settings, $event_handler);
151 $this->assertInstanceOf(ilMailMimeTransportSendmail::class, $factory->getTransport());
152 }

References ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnSmtpTransportIfEnabled()

ilMailMimeTest::testTransportFactoryWillReturnSmtpTransportIfEnabled ( )

Definition at line 108 of file ilMailMimeTest.php.

108 : void
109 {
110 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
111 'set',
112 'get',
113 ])->getMock();
114 $settings->method('get')->willReturnCallback(static fn($key): ?string => '1');
115 $this->setGlobalVariable('ilSetting', $settings);
116
117 $event_handler = $this->getMockBuilder(ilAppEventHandler::class)->disableOriginalConstructor()->onlyMethods([
118 'raise',
119 ])->getMock();
120
121 $factory = new ilMailMimeTransportFactory($settings, $event_handler);
122 $this->assertInstanceOf(ilMailMimeTransportSmtp::class, $factory->getTransport());
123 }

References ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

Field Documentation

◆ USER_ID

const int ilMailMimeTest::USER_ID = 6
private

Definition at line 26 of file ilMailMimeTest.php.


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