mirror of
https://github.com/nextcloud/server.git
synced 2026-04-22 23:03:00 -04:00
Merge pull request #39006 from nextcloud/backport/38958/stable26
[stable26] use getsystemvalue-functions in Mailer.php
This commit is contained in:
commit
1d1f2e5aef
2 changed files with 33 additions and 16 deletions
|
|
@ -293,8 +293,8 @@ class Mailer implements IMailer {
|
|||
// either null or true - if nothing is passed, let the symfony mailer figure out the configuration by itself
|
||||
$mailSmtpsecure = ($this->config->getSystemValue('mail_smtpsecure', null) === 'ssl') ? true : null;
|
||||
$transport = new EsmtpTransport(
|
||||
$this->config->getSystemValue('mail_smtphost', '127.0.0.1'),
|
||||
(int)$this->config->getSystemValue('mail_smtpport', 25),
|
||||
$this->config->getSystemValueString('mail_smtphost', '127.0.0.1'),
|
||||
$this->config->getSystemValueInt('mail_smtpport', 25),
|
||||
$mailSmtpsecure,
|
||||
null,
|
||||
$this->logger
|
||||
|
|
@ -302,11 +302,11 @@ class Mailer implements IMailer {
|
|||
/** @var SocketStream $stream */
|
||||
$stream = $transport->getStream();
|
||||
/** @psalm-suppress InternalMethod */
|
||||
$stream->setTimeout($this->config->getSystemValue('mail_smtptimeout', 10));
|
||||
$stream->setTimeout($this->config->getSystemValueInt('mail_smtptimeout', 10));
|
||||
|
||||
if ($this->config->getSystemValue('mail_smtpauth', false)) {
|
||||
$transport->setUsername($this->config->getSystemValue('mail_smtpname', ''));
|
||||
$transport->setPassword($this->config->getSystemValue('mail_smtppassword', ''));
|
||||
if ($this->config->getSystemValueBool('mail_smtpauth', false)) {
|
||||
$transport->setUsername($this->config->getSystemValueString('mail_smtpname', ''));
|
||||
$transport->setPassword($this->config->getSystemValueString('mail_smtppassword', ''));
|
||||
}
|
||||
|
||||
$streamingOptions = $this->config->getSystemValue('mail_smtpstreamoptions', []);
|
||||
|
|
|
|||
|
|
@ -239,9 +239,16 @@ class MailerTest extends TestCase {
|
|||
public function testStreamingOptions() {
|
||||
$this->config->method('getSystemValue')
|
||||
->willReturnMap([
|
||||
['mail_smtpmode', 'smtp', 'smtp'],
|
||||
['mail_smtpstreamoptions', [], ['foo' => 1]],
|
||||
]);
|
||||
$this->config->method('getSystemValueString')
|
||||
->willReturnMap([
|
||||
['mail_smtpmode', 'smtp', 'smtp'],
|
||||
['overwrite.cli.url', '', ''],
|
||||
['mail_smtphost', '127.0.0.1', '127.0.0.1'],
|
||||
]);
|
||||
$this->config->method('getSystemValueInt')
|
||||
->willReturnMap([
|
||||
['mail_smtpport', 25, 25],
|
||||
['mail_smtptimeout', 10, 10],
|
||||
]);
|
||||
|
|
@ -256,12 +263,20 @@ class MailerTest extends TestCase {
|
|||
public function testStreamingOptionsWrongType() {
|
||||
$this->config->method('getSystemValue')
|
||||
->willReturnMap([
|
||||
['mail_smtpmode', 'smtp', 'smtp'],
|
||||
['mail_smtpstreamoptions', [], 'bar'],
|
||||
]);
|
||||
$this->config->method('getSystemValueString')
|
||||
->willReturnMap([
|
||||
['mail_smtpmode', 'smtp', 'smtp'],
|
||||
['overwrite.cli.url', '', ''],
|
||||
['mail_smtphost', '127.0.0.1', '127.0.0.1'],
|
||||
]);
|
||||
$this->config->method('getSystemValueInt')
|
||||
->willReturnMap([
|
||||
['mail_smtpport', 25, 25],
|
||||
['mail_smtptimeout', 10, 10],
|
||||
]);
|
||||
|
||||
$mailer = self::invokePrivate($this->mailer, 'getInstance');
|
||||
/** @var EsmtpTransport $transport */
|
||||
$transport = self::invokePrivate($mailer, 'transport');
|
||||
|
|
@ -270,16 +285,17 @@ class MailerTest extends TestCase {
|
|||
}
|
||||
|
||||
public function testLocalDomain(): void {
|
||||
$this->config->method('getSystemValue')
|
||||
$this->config->method('getSystemValueString')
|
||||
->willReturnMap([
|
||||
['mail_smtpmode', 'smtp', 'smtp'],
|
||||
['overwrite.cli.url', '', 'https://some.valid.url.com:8080'],
|
||||
['mail_smtphost', '127.0.0.1', '127.0.0.1'],
|
||||
]);
|
||||
$this->config->method('getSystemValueInt')
|
||||
->willReturnMap([
|
||||
['mail_smtpport', 25, 25],
|
||||
['mail_smtptimeout', 10, 10],
|
||||
]);
|
||||
$this->config->method('getSystemValueString')
|
||||
->with('overwrite.cli.url', '')
|
||||
->willReturn('https://some.valid.url.com:8080');
|
||||
|
||||
/** @var SymfonyMailer $mailer */
|
||||
$mailer = self::invokePrivate($this->mailer, 'getInstance');
|
||||
|
|
@ -292,16 +308,17 @@ class MailerTest extends TestCase {
|
|||
}
|
||||
|
||||
public function testLocalDomainInvalidUrl(): void {
|
||||
$this->config->method('getSystemValue')
|
||||
$this->config->method('getSystemValueString')
|
||||
->willReturnMap([
|
||||
['mail_smtpmode', 'smtp', 'smtp'],
|
||||
['overwrite.cli.url', '', 'https:only.slash.does.not.work:8080'],
|
||||
['mail_smtphost', '127.0.0.1', '127.0.0.1'],
|
||||
]);
|
||||
$this->config->method('getSystemValueInt')
|
||||
->willReturnMap([
|
||||
['mail_smtpport', 25, 25],
|
||||
['mail_smtptimeout', 10, 10],
|
||||
]);
|
||||
$this->config->method('getSystemValueString')
|
||||
->with('overwrite.cli.url', '')
|
||||
->willReturn('https:only.slash.does.not.work:8080');
|
||||
|
||||
/** @var SymfonyMailer $mailer */
|
||||
$mailer = self::invokePrivate($this->mailer, 'getInstance');
|
||||
|
|
|
|||
Loading…
Reference in a new issue