• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

contributte / mail / 6690014969

28 Aug 2023 08:39AM UTC coverage: 72.84% (-0.7%) from 73.563%
6690014969

push

github

f3l1x
Exceptions: remove not used, and replace nette exception

59 of 81 relevant lines covered (72.84%)

0.73 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

88.89
/src/Mailer/DevOpsMailer.php
1
<?php declare(strict_types = 1);
2

3
namespace Contributte\Mail\Mailer;
4

5
use Nette\Mail\Mailer;
6
use Nette\Mail\Message;
7

8
class DevOpsMailer implements Mailer
9
{
10

11
        public function __construct(private Mailer $mailer, private string $mail)
1✔
12
        {
13
        }
1✔
14

15
        public function send(Message $mail): void
1✔
16
        {
17
                /** @var callable(string): array<string> $getHeaders */
18
                $getHeaders = static fn (string $name) => (array) $mail->getHeader($name);
1✔
19

20
                // Set original To, Cc, Bcc
21
                $counter = 0;
1✔
22
                foreach ($getHeaders('To') as $email => $name) {
1✔
23
                        $mail->setHeader('X-Original-To-' . $counter++, sprintf('<%s> %s', $email, $name));
1✔
24
                }
25

26
                $counter = 0;
1✔
27
                foreach ($getHeaders('Cc') as $email => $name) {
1✔
28
                        $mail->setHeader('X-Original-Cc-' . $counter++, sprintf('<%s> %s', $email, $name));
×
29
                }
30

31
                $counter = 0;
1✔
32
                foreach ($getHeaders('Bcc') as $email => $name) {
1✔
33
                        $mail->setHeader('X-Original-Bcc-' . $counter++, sprintf('<%s> %s', $email, $name));
×
34
                }
35

36
                // Override for DevOps
37
                $mail->setHeader('To', [$this->mail => 'DevOps']);
1✔
38
                $mail->setHeader('Cc', null);
1✔
39
                $mail->setHeader('Bcc', null);
1✔
40

41
                // Delegate to original mailer
42
                $this->mailer->send($mail);
1✔
43
        }
1✔
44

45
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc