'Lukas Reschke'],
[new Address('lukas@owncloud.com', 'Lukas Reschke')]
],
[
[
'lukas@owncloud.com' => 'Lukas Reschke',
'lukas@öwnclöüd.com',
'lukäs@owncloud.örg' => 'Lükäs Réschke'
],
[
new Address('lukas@owncloud.com', 'Lukas Reschke'),
new Address('lukas@öwnclöüd.com'),
new Address('lukäs@owncloud.örg', 'Lükäs Réschke')
]
],
[
['lukas@öwnclöüd.com'],
[new Address('lukas@öwnclöüd.com')]
],
];
}
/**
* @return array
*/
public function getMailAddressProvider() {
return [
[[], []],
[['lukas@owncloud.com' => 'Lukas Reschke'], ['lukas@owncloud.com' => 'Lukas Reschke']],
];
}
protected function setUp(): void {
parent::setUp();
$this->symfonyEmail = $this->getMockBuilder(Email::class)
->disableOriginalConstructor()->getMock();
$this->message = new Message($this->symfonyEmail, false);
}
/**
* @dataProvider mailAddressProvider
*
* @param string $unconverted
* @param string $expected
*/
public function testConvertAddresses($unconverted, $expected): void {
$this->assertEquals($expected, self::invokePrivate($this->message, 'convertAddresses', [$unconverted]));
}
public function testSetRecipients(): void {
$this->message = $this->message->setFrom(['pierres-general-store@stardewvalley.com' => 'Pierres General Store']);
$this->message = $this->message->setTo(['lewis-tent@stardewvalley.com' => "Lewis' Tent Life"]);
$this->message = $this->message->setReplyTo(['penny@stardewvalley-library.co.edu' => 'Penny']);
$this->message = $this->message->setCc(['gunther@stardewvalley-library.co.edu' => 'Gunther']);
$this->message = $this->message->setBcc(['pam@stardewvalley-bus.com' => 'Pam']);
$this->symfonyEmail
->expects($this->once())
->method('from')
->with(new Address('pierres-general-store@stardewvalley.com', 'Pierres General Store'));
$this->symfonyEmail
->expects($this->once())
->method('to')
->with(new Address('lewis-tent@stardewvalley.com', "Lewis' Tent Life"));
$this->symfonyEmail
->expects($this->once())
->method('replyTo')
->with(new Address('penny@stardewvalley-library.co.edu', 'Penny'));
$this->symfonyEmail
->expects($this->once())
->method('cc')
->with(new Address('gunther@stardewvalley-library.co.edu', 'Gunther'));
$this->symfonyEmail
->expects($this->once())
->method('bcc')
->with(new Address('pam@stardewvalley-bus.com', 'Pam'));
$this->message->setRecipients();
}
public function testSetTo(): void {
$expected = ['pierres-general-store@stardewvalley.com' => 'Pierres General Store'];
$message = $this->message->setTo(['pierres-general-store@stardewvalley.com' => 'Pierres General Store']);
$this->assertEquals($expected, $message->getTo());
}
public function testSetRecipientsException(): void {
$message = $this->message->setTo(['lewis-tent@~~~~.com' => "Lewis' Tent Life"]);
$this->symfonyEmail
->expects($this->once())
->method('to')
->willThrowException(new RfcComplianceException());
$this->expectException(RfcComplianceException::class);
$message->setRecipients();
}
public function testSetRecipientsEmptyValues(): void {
$message = $this->message->setTo([]);
$this->symfonyEmail
->expects($this->once())
->method('to');
$message->setRecipients();
}
public function testSetGetFrom(): void {
$expected = ['pierres-general-store@stardewvalley.com' => 'Pierres General Store'];
$message = $this->message->setFrom(['pierres-general-store@stardewvalley.com' => 'Pierres General Store']);
$this->assertEquals($expected, $message->getFrom());
}
public function testSetGetTo(): void {
$expected = ['lewis-tent@stardewvalley.com' => "Lewis' Tent Life"];
$message = $this->message->setTo(['lewis-tent@stardewvalley.com' => "Lewis' Tent Life"]);
$this->assertEquals($expected, $message->getTo());
}
public function testSetGetReplyTo(): void {
$expected = ['penny@stardewvalley-library.co.edu' => 'Penny'];
$message = $this->message->setReplyTo(['penny@stardewvalley-library.co.edu' => 'Penny']);
$this->assertEquals($expected, $message->getReplyTo());
}
public function testSetGetCC(): void {
$expected = ['gunther@stardewvalley-library.co.edu' => 'Gunther'];
$message = $this->message->setCc(['gunther@stardewvalley-library.co.edu' => 'Gunther']);
$this->assertEquals($expected, $message->getCc());
}
public function testSetGetBCC(): void {
$expected = ['pam@stardewvalley-bus.com' => 'Pam'];
$message = $this->message->setBcc(['pam@stardewvalley-bus.com' => 'Pam']);
$this->assertEquals($expected, $message->getBcc());
}
public function testSetPlainBody(): void {
$this->symfonyEmail
->expects($this->once())
->method('text')
->with('Fancy Body');
$this->message->setPlainBody('Fancy Body');
}
public function testGetPlainBody(): void {
$this->symfonyEmail
->expects($this->once())
->method('getTextBody')
->willReturn('Fancy Body');
$this->assertSame('Fancy Body', $this->message->getPlainBody());
}
public function testSetHtmlBody(): void {
$this->symfonyEmail
->expects($this->once())
->method('html')
->with('', 'utf-8');
$this->message->setHtmlBody('');
}
public function testPlainTextRenderOption(): void {
/** @var MockObject|Email $symfonyEmail */
$symfonyEmail = $this->getMockBuilder(Email::class)
->disableOriginalConstructor()->getMock();
/** @var MockObject|IEMailTemplate $template */
$template = $this->getMockBuilder(IEMailTemplate::class)
->disableOriginalConstructor()->getMock();
$message = new Message($symfonyEmail, true);
$template
->expects($this->never())
->method('renderHTML');
$template
->expects($this->once())
->method('renderText');
$template
->expects($this->once())
->method('renderSubject');
$message->useTemplate($template);
}
public function testBothRenderingOptions(): void {
/** @var MockObject|Email $symfonyEmail */
$symfonyEmail = $this->getMockBuilder(Email::class)
->disableOriginalConstructor()->getMock();
/** @var MockObject|IEMailTemplate $template */
$template = $this->getMockBuilder(IEMailTemplate::class)
->disableOriginalConstructor()->getMock();
$message = new Message($symfonyEmail, false);
$template
->expects($this->once())
->method('renderHTML');
$template
->expects($this->once())
->method('renderText');
$template
->expects($this->once())
->method('renderSubject');
$message->useTemplate($template);
}
public function testSetAutoSubmitted1(): void {
$headers = new Headers($this->createMock(HeaderInterface::class));
$headers->addTextHeader(AutoSubmitted::HEADER, 'yes');
$symfonyEmail = $this->createMock(Email::class);
$symfonyEmail->method('getHeaders')
->willReturn($headers);
$message = new Message($symfonyEmail, false);
$message->setAutoSubmitted(AutoSubmitted::VALUE_AUTO_GENERATED);
$this->assertNotSame('no', $message->getAutoSubmitted());
}
public function testSetAutoSubmitted2(): void {
$headers = new Headers($this->createMock(HeaderInterface::class));
$headers->addTextHeader(AutoSubmitted::HEADER, 'no');
$symfonyEmail = $this->createMock(Email::class);
$symfonyEmail->method('getHeaders')
->willReturn($headers);
$message = new Message($symfonyEmail, false);
$message->setAutoSubmitted(AutoSubmitted::VALUE_AUTO_GENERATED);
$this->assertSame('auto-generated', $message->getAutoSubmitted());
}
public function testGetAutoSubmitted(): void {
$headers = new Headers($this->createMock(HeaderInterface::class));
$headers->addTextHeader(AutoSubmitted::HEADER, 'no');
$symfonyEmail = $this->createMock(Email::class);
$symfonyEmail->method('getHeaders')
->willReturn($headers);
$message = new Message($symfonyEmail, false);
$this->assertSame('no', $message->getAutoSubmitted());
}
}
option value='artonge/fix/uid_type'>artonge/fix/uid_type
Nextcloud server, a safe home for all your data: https://github.com/nextcloud/server | www-data |
blob: ae32056e17f6ffe4503164101d232c591345ed6c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
<?php
/**
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
use Behat\Behat\Context\Context;
use Behat\Behat\Context\SnippetAcceptingContext;
use PHPUnit\Framework\Assert;
require __DIR__ . '/../../vendor/autoload.php';
/**
* Capabilities context.
*/
class CapabilitiesContext implements Context, SnippetAcceptingContext {
use BasicStructure;
use AppConfiguration;
/**
* @Then /^fields of capabilities match with$/
* @param \Behat\Gherkin\Node\TableNode|null $formData
*/
public function checkCapabilitiesResponse(\Behat\Gherkin\Node\TableNode $formData) {
$capabilitiesXML = simplexml_load_string($this->response->getBody());
Assert::assertNotFalse($capabilitiesXML, 'Failed to fetch capabilities');
$capabilitiesXML = $capabilitiesXML->data->capabilities;
foreach ($formData->getHash() as $row) {
$path_to_element = explode('@@@', $row['path_to_element']);
$answeredValue = $capabilitiesXML->{$row['capability']};
for ($i = 0; $i < count($path_to_element); $i++) {
$answeredValue = $answeredValue->{$path_to_element[$i]};
}
$answeredValue = (string)$answeredValue;
Assert::assertEquals(
$row['value'] === 'EMPTY' ? '' : $row['value'],
$answeredValue,
'Failed field ' . $row['capability'] . ' ' . $row['path_to_element']
);
}
}
protected function resetAppConfigs() {
$this->deleteServerConfig('core', 'shareapi_enabled');
$this->deleteServerConfig('core', 'shareapi_allow_links');
$this->deleteServerConfig('core', 'shareapi_allow_public_upload');
$this->deleteServerConfig('core', 'shareapi_allow_resharing');
$this->deleteServerConfig('files_sharing', 'outgoing_server2server_share_enabled');
$this->deleteServerConfig('files_sharing', 'incoming_server2server_share_enabled');
$this->deleteServerConfig('core', 'shareapi_enforce_links_password');
$this->deleteServerConfig('core', 'shareapi_allow_public_notification');
$this->deleteServerConfig('core', 'shareapi_default_expire_date');
$this->deleteServerConfig('core', 'shareapi_enforce_expire_date');
$this->deleteServerConfig('core', 'shareapi_allow_group_sharing');
}
}
|