From 83c5f76f874ab7e7c0861677d855110e2e5b3a51 Mon Sep 17 00:00:00 2001 From: Radoje Albijanic Date: Mon, 9 Apr 2018 18:51:09 +0200 Subject: [PATCH] Cast campaign ID-s to string (#460) * 413 error proper handle. * Cast campaign id-s to string. Added tests for that. * Style fixes --- src/Mailgun/Messages/MessageBuilder.php | 4 ++-- tests/Messages/MessageBuilderTest.php | 14 +++++++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/Mailgun/Messages/MessageBuilder.php b/src/Mailgun/Messages/MessageBuilder.php index 0fe1a1d..7e07f26 100644 --- a/src/Mailgun/Messages/MessageBuilder.php +++ b/src/Mailgun/Messages/MessageBuilder.php @@ -368,9 +368,9 @@ class MessageBuilder { if ($this->counters['attributes']['campaign_id'] < Api::CAMPAIGN_ID_LIMIT) { if (isset($this->message['o:campaign'])) { - array_push($this->message['o:campaign'], $campaignId); + array_push($this->message['o:campaign'], (string) $campaignId); } else { - $this->message['o:campaign'] = [$campaignId]; + $this->message['o:campaign'] = [(string) $campaignId]; } $this->counters['attributes']['campaign_id'] += 1; diff --git a/tests/Messages/MessageBuilderTest.php b/tests/Messages/MessageBuilderTest.php index 3414ec0..15b2d7e 100644 --- a/tests/Messages/MessageBuilderTest.php +++ b/tests/Messages/MessageBuilderTest.php @@ -245,7 +245,7 @@ class MessageBuilderTest extends \Mailgun\Tests\MailgunTestCase ); } - public function testsetTestMode() + public function testSetTestMode() { $message = $this->client->MessageBuilder(); $message->setTestMode(true); @@ -262,17 +262,25 @@ class MessageBuilderTest extends \Mailgun\Tests\MailgunTestCase $this->assertEquals(['o:testmode' => 'no'], $messageObj); } - public function addCampaignId() + public function testAddCampaignId() { $message = $this->client->MessageBuilder(); $message->addCampaignId('ABC123'); $message->addCampaignId('XYZ987'); $message->addCampaignId('TUV456'); - $message->addCampaignId('NONO123'); $messageObj = $message->getMessage(); $this->assertEquals(['o:campaign' => ['ABC123', 'XYZ987', 'TUV456']], $messageObj); } + public function testAddCampaignIdInteger() + { + $message = $this->client->MessageBuilder(); + $message->addCampaignId(1111); + $message->addCampaignId(2222); + $messageObj = $message->getMessage(); + $this->assertSame(['o:campaign' => ['1111', '2222']], $messageObj); + } + public function testSetDkim() { $message = $this->client->MessageBuilder();