Skip to content

Commit 0564fb5

Browse files
jdavidbakrjonb-sftaylorotwell
authored
[9.x] Store SES message ID in X-SES-Message-ID header (#41615)
* Store SES message ID in X-SES-Message-ID header * Using alias for Mockery * Accidentally removed a line in the test * Moving SES message ID retrieval outside of the try/catch block * Style fix * Last commit was an error * Update SesTransport.php Co-authored-by: Jon Baker <[email protected]> Co-authored-by: Taylor Otwell <[email protected]>
1 parent 2fec0a3 commit 0564fb5

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

src/Illuminate/Mail/Transport/SesTransport.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ protected function doSend(SentMessage $message): void
5757
}
5858

5959
try {
60-
$this->ses->sendRawEmail(
60+
$result = $this->ses->sendRawEmail(
6161
array_merge(
6262
$options, [
6363
'Source' => $message->getEnvelope()->getSender()->toString(),
@@ -75,6 +75,11 @@ protected function doSend(SentMessage $message): void
7575
} catch (AwsException $e) {
7676
throw new Exception('Request to AWS SES API failed.', $e->getCode(), $e);
7777
}
78+
79+
$messageId = $result->get('MessageId');
80+
81+
$message->getOriginalMessage()->getHeaders()->addHeader('X-Message-ID', $messageId);
82+
$message->getOriginalMessage()->getHeaders()->addHeader('X-SES-Message-ID', $messageId);
7883
}
7984

8085
/**

tests/Mail/MailSesTransportTest.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,13 @@ public function testSend()
5757
$message->bcc('[email protected]');
5858

5959
$client = m::mock(SesClient::class);
60-
$client->shouldReceive('sendRawEmail')->once();
60+
$sesResult = m::mock();
61+
$sesResult->shouldReceive('get')
62+
->with('MessageId')
63+
->once()
64+
->andReturn('ses-message-id');
65+
$client->shouldReceive('sendRawEmail')->once()
66+
->andReturn($sesResult);
6167

6268
(new SesTransport($client))->send($message);
6369
}

0 commit comments

Comments
 (0)