ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
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 23 of file ilMailMimeTest.php.

Member Function Documentation

◆ getUserById()

ilMailMimeTest::getUserById ( int  $usr_id)
protected

Definition at line 177 of file ilMailMimeTest.php.

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

Referenced by setUp().

+ Here is the caller graph for this function:

◆ setUp()

ilMailMimeTest::setUp ( )
protected

Reimplemented from ilMailBaseTestCase.

Definition at line 27 of file ilMailMimeTest.php.

27 : void
28 {
30 ilMailMimeSenderUserById::addUserToCache(self::USER_ID, $this->getUserById(self::USER_ID));
31
32 parent::setUp();
33 }
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 153 of file ilMailMimeTest.php.

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

References ANONYMOUS_USER_ID.

◆ testFactoryWillReturnSystemSenderWhenExplicitlyRequested()

ilMailMimeTest::testFactoryWillReturnSystemSenderWhenExplicitlyRequested ( )

Definition at line 165 of file ilMailMimeTest.php.

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

◆ testFactoryWillReturnUserSenderForExistingUserId()

ilMailMimeTest::testFactoryWillReturnUserSenderForExistingUserId ( )

Definition at line 188 of file ilMailMimeTest.php.

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

◆ testFactoryWillReturnUserSenderWhenExplicitlyRequested()

ilMailMimeTest::testFactoryWillReturnUserSenderWhenExplicitlyRequested ( )

Definition at line 200 of file ilMailMimeTest.php.

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

◆ testMimMailDelegatesEmailDeliveryToDefaultTransport()

ilMailMimeTest::testMimMailDelegatesEmailDeliveryToDefaultTransport ( )

Definition at line 63 of file ilMailMimeTest.php.

63 : void
64 {
65 $default_transport = $this->getMockBuilder(ilMailMimeTransport::class)->getMock();
66 $default_transport->expects($this->once())->method('send');
67
68 $transport_factory = $this->getMockBuilder(ilMailMimeTransportFactory::class)->disableOriginalConstructor()->getMock();
69 $transport_factory->method('getTransport')->willReturn($default_transport);
70 $this->setGlobalVariable('mail.mime.transport.factory', $transport_factory);
71
72 $refinery = $this->getMockBuilder(Factory::class)->disableOriginalConstructor()->getMock();
73 $this->setGlobalVariable('refinery', $refinery);
74
75 $settings = $this->getMockBuilder(ilSetting::class)->disableOriginalConstructor()->onlyMethods([
76 'set',
77 'get',
78 ])->getMock();
79 $this->setGlobalVariable('ilSetting', $settings);
80
81 $refinery = $this->getMockBuilder(\ILIAS\Refinery\Factory::class)->disableOriginalConstructor()->getMock();
82 $this->setGlobalVariable('refinery', $refinery);
83
84 $mail = new ilMimeMail();
85 $mail->Send();
86 }
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 35 of file ilMailMimeTest.php.

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

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 88 of file ilMailMimeTest.php.

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

References ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled()

ilMailMimeTest::testTransportFactoryWillReturnSendmailTransportIfSmtpTransportIsDisabled ( )

Definition at line 124 of file ilMailMimeTest.php.

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

References ilMailBaseTestCase\setGlobalVariable().

+ Here is the call graph for this function:

◆ testTransportFactoryWillReturnSmtpTransportIfEnabled()

ilMailMimeTest::testTransportFactoryWillReturnSmtpTransportIfEnabled ( )

Definition at line 107 of file ilMailMimeTest.php.

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

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 25 of file ilMailMimeTest.php.


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