SwiftMailerTest.php in Swift Mailer 8
File
tests/src/Kernel/Plugin/Mail/SwiftMailerTest.php
View source
<?php
namespace Drupal\Tests\swiftmailer\Kernel\Plugin\Mail;
use Drupal\Core\Render\Markup;
use Drupal\KernelTests\KernelTestBase;
class SwiftMailerTest extends KernelTestBase {
protected static $modules = [
'user',
'filter',
'swiftmailer',
];
protected $plugin;
public function setUp() {
parent::setUp();
$this
->installConfig([
'swiftmailer',
'filter',
]);
$this
->installEntitySchema('user');
$this
->installSchema('user', 'users_data');
$this->plugin = $this->container
->get('plugin.manager.mail')
->createInstance('swiftmailer');
}
public function testMassageMessageBody(array $message, $expected) {
$message['params']['format'] = SWIFTMAILER_FORMAT_HTML;
$actual = $this->plugin
->massageMessageBody($message);
$this
->assertSame($expected, (string) $actual['body']);
}
public function bodyDataProvider() {
return [
'with html' => [
'message' => [
'body' => [
Markup::create('<p>Lorem ipsum dolor sit amet</p>'),
Markup::create('<p>consetetur sadipscing elitr</p>'),
Markup::create('<p>sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat</p>'),
Markup::create('<p>sed diam voluptua.</p>'),
],
],
'expected' => "<p>Lorem ipsum dolor sit amet</p>\n<p>consetetur sadipscing elitr</p>\n<p>sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat</p>\n<p>sed diam voluptua.</p>",
],
'no html' => [
'message' => [
'body' => [
"Lorem ipsum dolor sit amet\nconsetetur sadipscing elitr\nsed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat\nsed diam voluptua.",
],
],
'expected' => "<p>Lorem ipsum dolor sit amet<br />\nconsetetur sadipscing elitr<br />\nsed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat<br />\nsed diam voluptua.</p>\n",
],
];
}
}