Skip to content

Commit c24fd12

Browse files
committed
fix(sweego): Fix channel parameter value to fixed value for Mailer and Notifier Transports
1 parent b765290 commit c24fd12

File tree

3 files changed

+23
-0
lines changed

3 files changed

+23
-0
lines changed

src/Symfony/Component/Mailer/Bridge/Sweego/Tests/Transport/SweegoApiTransportTest.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,9 @@ public function testSend()
110110
$this->assertSame('https://api.sweego.io:8984/send', $url);
111111
$this->assertStringContainsString('Accept: */*', $options['headers'][2] ?? $options['request_headers'][1]);
112112

113+
$payload = json_decode($options['body'], true);
114+
$this->assertSame('email', $payload['channel']);
115+
113116
return new JsonMockResponse(['transaction_id' => 'foobar'], [
114117
'http_code' => 200,
115118
]);

src/Symfony/Component/Mailer/Bridge/Sweego/Transport/SweegoApiTransport.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ private function getPayload(Email $email, Envelope $envelope): array
9090
'from' => $this->formatAddress($envelope->getSender()),
9191
'subject' => $email->getSubject(),
9292
'campaign-type' => 'transac',
93+
'channel' => 'email',
9394
];
9495

9596
if ($email->getTextBody()) {

src/Symfony/Component/Notifier/Bridge/Sweego/Tests/SweegoTransportTest.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
namespace Symfony\Component\Notifier\Bridge\Sweego\Tests;
1313

1414
use Symfony\Component\HttpClient\MockHttpClient;
15+
use Symfony\Component\HttpClient\Response\JsonMockResponse;
1516
use Symfony\Component\Notifier\Bridge\Sweego\SweegoTransport;
1617
use Symfony\Component\Notifier\Exception\UnsupportedMessageTypeException;
1718
use Symfony\Component\Notifier\Message\ChatMessage;
@@ -68,4 +69,22 @@ public function testSendWithInvalidMessageType()
6869
$message = $this->createMock(MessageInterface::class);
6970
$transport->send($message);
7071
}
72+
73+
public function testSendSmsMessage()
74+
{
75+
$client = new MockHttpClient(function ($method, $url, $options) {
76+
$this->assertSame('POST', $method);
77+
$this->assertSame('https://api.sweego.io/send', $url);
78+
79+
$body = json_decode($options['body'], true);
80+
$this->assertSame('sms', $body['channel']);
81+
82+
return new JsonMockResponse(['swg_uids' => ['123']]);
83+
});
84+
85+
$transport = self::createTransport($client);
86+
$sentMessage = $transport->send(new SmsMessage('0611223344', 'Hello!'));
87+
88+
$this->assertSame('123', $sentMessage->getMessageId());
89+
}
7190
}

0 commit comments

Comments
 (0)