ILIAS  release_8 Revision v8.24
ilMailMimeTest Class Reference

Class ilMailMimeTest. More...

+ 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 $usrId)
 
- Protected Member Functions inherited from ilMailBaseTest
 brutallyTrimHTML (string $html)
 
 setUp ()
 
 tearDown ()
 
 setGlobalVariable (string $name, $value)
 

Private Attributes

const USER_ID = 6
 

Detailed Description

Class ilMailMimeTest.

Author
Michael Jansen mjans.nosp@m.en@d.nosp@m.ataba.nosp@m.y.de

Definition at line 27 of file ilMailMimeTest.php.

Member Function Documentation

◆ getUserById()

ilMailMimeTest::getUserById ( int  $usrId)
protected
Exceptions
ReflectionException

Definition at line 204 of file ilMailMimeTest.php.

204 : ilObjUser
205 {
206 $user = $this->getMockBuilder(ilObjUser::class)
207 ->disableOriginalConstructor()
208 ->onlyMethods(['getId'])
209 ->getMock();
210 $user->method('getId')->willReturn($usrId);
211
212 return $user;
213 }
User class.

Referenced by setUp().

+ Here is the caller graph for this function:

◆ setUp()

ilMailMimeTest::setUp ( )
protected

Reimplemented from ilMailBaseTest.

Definition at line 31 of file ilMailMimeTest.php.

31 : void
32 {
34 ilMailMimeSenderUserById::addUserToCache(self::USER_ID, $this->getUserById(self::USER_ID));
35
36 parent::setUp();
37 }
static addUserToCache(int $usrId, ilObjUser $user)
getUserById(int $usrId)
static setDefaultTransport(?ilMailMimeTransport $transport)

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

+ Here is the call graph for this function:

◆ testFactoryWillReturnSystemSenderForAnonymousUserId()

ilMailMimeTest::testFactoryWillReturnSystemSenderForAnonymousUserId ( )
Exceptions
ReflectionException

Definition at line 176 of file ilMailMimeTest.php.

176 : void
177 {
178 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
179 'set',
180 'get',
181 ])->getMock();
182
184 $this->assertInstanceOf(ilMailMimeSenderSystem::class, $factory->getSenderByUsrId(ANONYMOUS_USER_ID));
185 }
Class ilMailMimeSenderFactory.
const ANONYMOUS_USER_ID
Definition: constants.php:27
$factory
Definition: metadata.php:75
array $settings
Setting values (LTI parameters, custom parameters and local parameters).
Definition: System.php:200

References $factory, ILIAS\LTI\ToolProvider\$settings, and ANONYMOUS_USER_ID.

◆ testFactoryWillReturnSystemSenderWhenExplicitlyRequested()

ilMailMimeTest::testFactoryWillReturnSystemSenderWhenExplicitlyRequested ( )
Exceptions
ReflectionException

Definition at line 190 of file ilMailMimeTest.php.

190 : void
191 {
192 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
193 'set',
194 'get',
195 ])->getMock();
196
198 $this->assertInstanceOf(ilMailMimeSenderSystem::class, $factory->system());
199 }

References $factory, and ILIAS\LTI\ToolProvider\$settings.

◆ testFactoryWillReturnUserSenderForExistingUserId()

ilMailMimeTest::testFactoryWillReturnUserSenderForExistingUserId ( )
Exceptions
ReflectionException

Definition at line 218 of file ilMailMimeTest.php.

218 : void
219 {
220 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
221 'set',
222 'get',
223 ])->getMock();
224
226 $this->assertInstanceOf(ilMailMimeSenderUser::class, $factory->getSenderByUsrId(self::USER_ID));
227 }

References $factory, and ILIAS\LTI\ToolProvider\$settings.

◆ testFactoryWillReturnUserSenderWhenExplicitlyRequested()

ilMailMimeTest::testFactoryWillReturnUserSenderWhenExplicitlyRequested ( )
Exceptions
ReflectionException

Definition at line 232 of file ilMailMimeTest.php.

232 : void
233 {
234 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
235 'set',
236 'get',
237 ])->getMock();
238
240 $this->assertInstanceOf(ilMailMimeSenderUser::class, $factory->user(self::USER_ID));
241 }

References $factory, and ILIAS\LTI\ToolProvider\$settings.

◆ testMimMailDelegatesEmailDeliveryToDefaultTransport()

ilMailMimeTest::testMimMailDelegatesEmailDeliveryToDefaultTransport ( )
Exceptions
ReflectionException

Definition at line 70 of file ilMailMimeTest.php.

70 : void
71 {
72 $defaultTransport = $this->getMockBuilder(ilMailMimeTransport::class)->getMock();
73 $defaultTransport->expects($this->once())->method('send');
74
75 $transportFactory = $this->getMockBuilder(ilMailMimeTransportFactory::class)->disableOriginalConstructor()->getMock();
76 $transportFactory->method('getTransport')->willReturn($defaultTransport);
77 $this->setGlobalVariable('mail.mime.transport.factory', $transportFactory);
78
79 $refineryMock = $this->getMockBuilder(Factory::class)->disableOriginalConstructor()->getMock();
80 $this->setGlobalVariable('refinery', $refineryMock);
81
82 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
83 'set',
84 'get',
85 ])->getMock();
86 $this->setGlobalVariable('ilSetting', $settings);
87
88 $mail = new ilMimeMail();
89 $mail->Send();
90 }
setGlobalVariable(string $name, $value)

References ILIAS\LTI\ToolProvider\$settings, and ilMailBaseTest\setGlobalVariable().

+ Here is the call graph for this function:

◆ testMimMailDelegatesEmailDeliveryToThePassedTransporter()

ilMailMimeTest::testMimMailDelegatesEmailDeliveryToThePassedTransporter ( )
Exceptions
ReflectionException

Definition at line 42 of file ilMailMimeTest.php.

42 : void
43 {
44 $defaultTransport = $this->getMockBuilder(ilMailMimeTransport::class)->disableOriginalConstructor()->getMock();
45 $defaultTransport->expects($this->never())->method('send');
46
47 $transport = $this->getMockBuilder(ilMailMimeTransport::class)->getMock();
48 $transport->expects($this->once())->method('send');
49
50 $transportFactory = $this->getMockBuilder(ilMailMimeTransportFactory::class)->disableOriginalConstructor()->getMock();
51 $transportFactory->method('getTransport')->willReturn($defaultTransport);
52 $this->setGlobalVariable('mail.mime.transport.factory', $transportFactory);
53
54 $refineryMock = $this->getMockBuilder(Factory::class)->disableOriginalConstructor()->getMock();
55 $this->setGlobalVariable('refinery', $refineryMock);
56
57 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
58 'set',
59 'get',
60 ])->getMock();
61 $this->setGlobalVariable('ilSetting', $settings);
62
63 $mail = new ilMimeMail();
64 $mail->Send($transport);
65 }

References ILIAS\LTI\ToolProvider\$settings, and ilMailBaseTest\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnNullTransportIfExternalEmailDeliveryIsDisabled()

ilMailMimeTest::testTransportFactoryWillReturnNullTransportIfExternalEmailDeliveryIsDisabled ( )
Exceptions
ReflectionException

Definition at line 95 of file ilMailMimeTest.php.

95 : void
96 {
97 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
98 'set',
99 'get',
100 ])->getMock();
101 $settings->method('get')->willReturnCallback(static function ($key): ?string {
102 return (string) !('mail_allow_external' === $key);
103 });
104 $this->setGlobalVariable('ilSetting', $settings);
105
106 $eventHandler = $this->getMockBuilder(ilAppEventHandler::class)->disableOriginalConstructor()->onlyMethods([
107 'raise',
108 ])->getMock();
109
110 $factory = new ilMailMimeTransportFactory($settings, $eventHandler);
111 $this->assertInstanceOf(ilMailMimeTransportNull::class, $factory->getTransport());
112 }
string $key
Consumer key/client ID value.
Definition: System.php:193

References $factory, ILIAS\LTI\ToolProvider\$key, ILIAS\LTI\ToolProvider\$settings, and ilMailBaseTest\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled()

ilMailMimeTest::testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled ( )
Exceptions
ReflectionException

Definition at line 144 of file ilMailMimeTest.php.

144 : void
145 {
146 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
147 'set',
148 'get',
149 ])->getMock();
150
151 $settings->method('get')->willReturnCallback(static function ($key): ?string {
152 if ('mail_allow_external' === $key) {
153 return '1';
154 }
155
156
157 if ('mail_smtp_status' === $key) {
158 return '0';
159 }
160
161 return '1';
162 });
163 $this->setGlobalVariable('ilSetting', $settings);
164
165 $eventHandler = $this->getMockBuilder(ilAppEventHandler::class)->disableOriginalConstructor()->onlyMethods([
166 'raise',
167 ])->getMock();
168
169 $factory = new ilMailMimeTransportFactory($settings, $eventHandler);
170 $this->assertInstanceOf(ilMailMimeTransportSendmail::class, $factory->getTransport());
171 }

References $factory, ILIAS\LTI\ToolProvider\$key, ILIAS\LTI\ToolProvider\$settings, and ilMailBaseTest\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnSmtpTransportIfEnabled()

ilMailMimeTest::testTransportFactoryWillReturnSmtpTransportIfEnabled ( )
Exceptions
ReflectionException

Definition at line 117 of file ilMailMimeTest.php.

117 : void
118 {
119 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
120 'set',
121 'get',
122 ])->getMock();
123 $settings->method('get')->willReturnCallback(static function ($key): ?string {
124 if ('mail_allow_external' === $key) {
125 return '1';
126 }
127
128
129 return '1';
130 });
131 $this->setGlobalVariable('ilSetting', $settings);
132
133 $eventHandler = $this->getMockBuilder(ilAppEventHandler::class)->disableOriginalConstructor()->onlyMethods([
134 'raise',
135 ])->getMock();
136
137 $factory = new ilMailMimeTransportFactory($settings, $eventHandler);
138 $this->assertInstanceOf(ilMailMimeTransportSmtp::class, $factory->getTransport());
139 }

References $factory, ILIAS\LTI\ToolProvider\$key, ILIAS\LTI\ToolProvider\$settings, and ilMailBaseTest\setGlobalVariable().

+ Here is the call graph for this function:

Field Documentation

◆ USER_ID

const ilMailMimeTest::USER_ID = 6
private

Definition at line 29 of file ilMailMimeTest.php.


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