TestTransport   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 15
dl 0
loc 33
ccs 0
cts 21
cp 0
rs 10
c 2
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A send() 0 24 1
1
<?php
2
3
namespace App\Mailer\Transport;
4
5
use Cake\Core\Configure;
6
use Cake\Mailer\AbstractTransport;
7
use Cake\Mailer\Message;
8
9
use function trim;
10
11
/**
12
 * Test environment Email Transport
13
 */
14
class TestTransport extends AbstractTransport
15
{
16
    /**
17
     * Send mail
18
     *
19
     * @param Message $message Email mesage.
20
     * @return array
21
     * @psalm-return array{headers: string, message: string}
22
     */
23
    public function send(Message $message): array
24
    {
25
        $headers = $message->getHeaders(
26
            [
27
                'from',
28
                'sender',
29
                'replyTo',
30
                'readReceipt',
31
                'returnPath',
32
                'to',
33
                'cc',
34
                'subject',
35
            ]
36
        );
37
38
        $message = trim($message->getBodyString());
39
        $result = [
40
            'headers' => $headers,
41
            'message' => $message,
42
        ];
43
44
        Configure::write('test_transport_email', $result);
45
46
        return $result;
47
    }
48
}
49