summaryrefslogtreecommitdiff
path: root/Postman/Postman-Mail/sendgrid/vendor/sendgrid/sendgrid/test/unit/KitchenSinkTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'Postman/Postman-Mail/sendgrid/vendor/sendgrid/sendgrid/test/unit/KitchenSinkTest.php')
-rw-r--r--Postman/Postman-Mail/sendgrid/vendor/sendgrid/sendgrid/test/unit/KitchenSinkTest.php1229
1 files changed, 0 insertions, 1229 deletions
diff --git a/Postman/Postman-Mail/sendgrid/vendor/sendgrid/sendgrid/test/unit/KitchenSinkTest.php b/Postman/Postman-Mail/sendgrid/vendor/sendgrid/sendgrid/test/unit/KitchenSinkTest.php
deleted file mode 100644
index 28d047a..0000000
--- a/Postman/Postman-Mail/sendgrid/vendor/sendgrid/sendgrid/test/unit/KitchenSinkTest.php
+++ /dev/null
@@ -1,1229 +0,0 @@
-<?php
-/**
- * This file tests the request object generation for a /mail/send API call
- *
- * PHP Version - 5.6, 7.0, 7.1, 7.2
- *
- * @package SendGrid\Tests
- * @author Elmer Thomas <dx@sendgrid.com>
- * @copyright 2018-19 Twilio SendGrid
- * @license https://opensource.org/licenses/MIT The MIT License
- * @version GIT: <git_id>
- * @link http://packagist.org/packages/sendgrid/sendgrid
- */
-
-namespace SendGrid\Tests;
-
-/**
- * This class tests the request object generation for a /mail/send API call
- *
- * @package SendGrid\Tests
- */
-class KitchenSinkTest extends BaseTestClass
-{
-
- private $REQUEST_OBJECT_DYNAMIC = <<<'JSON'
-{
- "asm": {
- "group_id": 1,
- "groups_to_display": [
- 1,
- 2,
- 3,
- 4
- ]
- },
- "attachments": [
- {
- "content": "YmFzZTY0IGVuY29kZWQgY29udGVudDE=",
- "content_id": "Banner",
- "disposition": "inline",
- "filename": "banner.png",
- "type": "image/png"
- },
- {
- "content": "YmFzZTY0IGVuY29kZWQgY29udGVudDI=",
- "content_id": "Banner 3",
- "disposition": "attachment",
- "filename": "image/jpeg",
- "type": "banner2.jpeg"
- },
- {
- "content": "YmFzZTY0IGVuY29kZWQgY29udGVudDM=",
- "content_id": "Banner 3",
- "disposition": "inline",
- "filename": "image/gif",
- "type": "banner3.gif"
- }
- ],
- "batch_id": "MWQxZmIyODYtNjE1Ni0xMWU1LWI3ZTUtMDgwMDI3OGJkMmY2LWEzMmViMjYxMw",
- "categories": [
- "Category 1",
- "Category 2",
- "Category 3"
- ],
- "content": [
- {
- "type": "text/plain",
- "value": "and easy to do anywhere, even with PHP"
- },
- {
- "type": "text/html",
- "value": "<strong>and easy to do anywhere, even with PHP</strong>"
- },
- {
- "type": "text/calendar",
- "value": "Party Time!!"
- },
- {
- "type": "text/calendar2",
- "value": "Party Time 2!!"
- }
- ],
- "from": {
- "email": "test@example.com",
- "name": "DX"
- },
- "headers": {
- "X-Day": "Monday",
- "X-Month": "January",
- "X-Year": "2017"
- },
- "ip_pool_name": "23",
- "mail_settings": {
- "bcc": {
- "email": "bcc@example.com",
- "enable": true
- },
- "bypass_list_management": {
- "enable": true
- },
- "footer": {
- "enable": true,
- "html": "<strong>Footer</strong>",
- "text": "Footer"
- },
- "sandbox_mode": {
- "enable": true
- },
- "spam_check": {
- "enable": true,
- "post_to_url": "http://mydomain.com",
- "threshold": 1
- }
- },
- "personalizations": [
- {
- "bcc": [
- {
- "email": "test+7@example.com",
- "name": "Example User7"
- },
- {
- "email": "test+8@example.com",
- "name": "Example User8"
- },
- {
- "email": "test+9@example.com",
- "name": "Example User9"
- }
- ],
- "cc": [
- {
- "email": "test+4@example.com",
- "name": "Example User4"
- },
- {
- "email": "test+5@example.com",
- "name": "Example User5"
- },
- {
- "email": "test+6@example.com",
- "name": "Example User6"
- }
- ],
- "custom_args": {
- "category": "name",
- "marketing1": "false",
- "marketing2": "true",
- "transactional1": "true",
- "transactional2": "false"
- },
- "headers": {
- "X-Test1": "Test1",
- "X-Test2": "Test2",
- "X-Test3": "Test3",
- "X-Test4": "Test4"
- },
- "send_at": 1461775051,
- "dynamic_template_data": {
- "object": {
- "key1": "Key 1",
- "key2": "Key 2"
- },
- "boolean": false,
- "array": [
- "index0",
- "index1"
- ],
- "number": 1
- },
- "to": [
- {
- "email": "test@example.com",
- "name": "Example User"
- },
- {
- "email": "test+1@example.com",
- "name": "Example User1"
- },
- {
- "email": "test+2@example.com",
- "name": "Example User2"
- },
- {
- "email": "test+3@example.com",
- "name": "Example User3"
- }
- ]
- }
- ],
- "reply_to": {
- "email": "dx+replyto2@example.com",
- "name": "DX Team Reply To 2"
- },
- "sections": {
- "%section1%": "Substitution for Section 1 Tag",
- "%section3%": "Substitution for Section 3 Tag",
- "%section4%": "Substitution for Section 4 Tag"
- },
- "subject": "Sending with Twilio SendGrid is Fun and Global 2",
- "template_id": "d-13b8f94fbcae4ec6b75270d6cb59f932",
- "tracking_settings": {
- "click_tracking": {
- "enable": true,
- "enable_text": true
- },
- "ganalytics": {
- "enable": true,
- "utm_campaign": "utm_campaign",
- "utm_content": "utm_content",
- "utm_medium": "utm_medium",
- "utm_source": "utm_source",
- "utm_term": "utm_term"
- },
- "open_tracking": {
- "enable": true,
- "substitution_tag": "--sub--"
- },
- "subscription_tracking": {
- "enable": true,
- "html": "<bold>subscribe</bold>",
- "substitution_tag": "%%sub%%",
- "text": "subscribe"
- }
- }
-}
-JSON;
-
- private $REQUEST_OBJECT = <<<'JSON'
-{
- "asm": {
- "group_id": 1,
- "groups_to_display": [
- 1,
- 2,
- 3,
- 4
- ]
- },
- "attachments": [
- {
- "content": "YmFzZTY0IGVuY29kZWQgY29udGVudDE=",
- "content_id": "Banner",
- "disposition": "inline",
- "filename": "banner.png",
- "type": "image/png"
- },
- {
- "content": "YmFzZTY0IGVuY29kZWQgY29udGVudDI=",
- "content_id": "Banner 3",
- "disposition": "attachment",
- "filename": "image/jpeg",
- "type": "banner2.jpeg"
- },
- {
- "content": "YmFzZTY0IGVuY29kZWQgY29udGVudDM=",
- "content_id": "Banner 3",
- "disposition": "inline",
- "filename": "image/gif",
- "type": "banner3.gif"
- }
- ],
- "batch_id": "MWQxZmIyODYtNjE1Ni0xMWU1LWI3ZTUtMDgwMDI3OGJkMmY2LWEzMmViMjYxMw",
- "categories": [
- "Category 1",
- "Category 2",
- "Category 3"
- ],
- "content": [
- {
- "type": "text/plain",
- "value": "and easy to do anywhere, even with PHP"
- },
- {
- "type": "text/html",
- "value": "<strong>and easy to do anywhere, even with PHP</strong>"
- },
- {
- "type": "text/calendar",
- "value": "Party Time!!"
- },
- {
- "type": "text/calendar2",
- "value": "Party Time 2!!"
- }
- ],
- "from": {
- "email": "test@example.com",
- "name": "DX"
- },
- "headers": {
- "X-Day": "Monday",
- "X-Month": "January",
- "X-Year": "2017"
- },
- "ip_pool_name": "23",
- "mail_settings": {
- "bcc": {
- "email": "bcc@example.com",
- "enable": true
- },
- "bypass_list_management": {
- "enable": true
- },
- "footer": {
- "enable": true,
- "html": "<strong>Footer</strong>",
- "text": "Footer"
- },
- "sandbox_mode": {
- "enable": true
- },
- "spam_check": {
- "enable": true,
- "post_to_url": "http://mydomain.com",
- "threshold": 1
- }
- },
- "personalizations": [
- {
- "bcc": [
- {
- "email": "test+7@example.com",
- "name": "Example User7"
- },
- {
- "email": "test+8@example.com",
- "name": "Example User8"
- },
- {
- "email": "test+9@example.com",
- "name": "Example User9"
- }
- ],
- "cc": [
- {
- "email": "test+4@example.com",
- "name": "Example User4"
- },
- {
- "email": "test+5@example.com",
- "name": "Example User5"
- },
- {
- "email": "test+6@example.com",
- "name": "Example User6"
- }
- ],
- "custom_args": {
- "category": "name",
- "marketing1": "false",
- "marketing2": "true",
- "transactional1": "true",
- "transactional2": "false"
- },
- "headers": {
- "X-Test1": "Test1",
- "X-Test2": "Test2",
- "X-Test3": "Test3",
- "X-Test4": "Test4"
- },
- "send_at": 1461775051,
- "substitutions": {
- "%city1%": "Denver",
- "%city2%": "Orange",
- "%name1%": "Example Name 1",
- "%name2%": "Example Name 2"
- },
- "to": [
- {
- "email": "test@example.com",
- "name": "Example User"
- },
- {
- "email": "test+1@example.com",
- "name": "Example User1"
- },
- {
- "email": "test+2@example.com",
- "name": "Example User2"
- },
- {
- "email": "test+3@example.com",
- "name": "Example User3"
- }
- ]
- }
- ],
- "reply_to": {
- "email": "dx+replyto2@example.com",
- "name": "DX Team Reply To 2"
- },
- "sections": {
- "%section1%": "Substitution for Section 1 Tag",
- "%section3%": "Substitution for Section 3 Tag",
- "%section4%": "Substitution for Section 4 Tag"
- },
- "subject": "Sending with Twilio SendGrid is Fun and Global 2",
- "template_id": "13b8f94f-bcae-4ec6-b752-70d6cb59f932",
- "tracking_settings": {
- "click_tracking": {
- "enable": true,
- "enable_text": true
- },
- "ganalytics": {
- "enable": true,
- "utm_campaign": "utm_campaign",
- "utm_content": "utm_content",
- "utm_medium": "utm_medium",
- "utm_source": "utm_source",
- "utm_term": "utm_term"
- },
- "open_tracking": {
- "enable": true,
- "substitution_tag": "--sub--"
- },
- "subscription_tracking": {
- "enable": true,
- "html": "<bold>subscribe</bold>",
- "substitution_tag": "%%sub%%",
- "text": "subscribe"
- }
- }
-}
-JSON;
-
- /**
- * Test all parameters without using objects
- */
- public function testKitchenSinkExampleWithoutObjects()
- {
- $email = new \SendGrid\Mail\Mail();
-
- // For a detailed description of each of these settings,
- // please see the
- // [documentation](https://sendgrid.com/docs/API_Reference/api_v3.html).
- $email->setSubject("Sending with Twilio SendGrid is Fun 2");
-
- $email->addTo("test@example.com", "Example User");
- $email->addTo("test+1@example.com", "Example User1");
- $toEmails = [
- "test+2@example.com" => "Example User2",
- "test+3@example.com" => "Example User3"
- ];
- $email->addTos($toEmails);
-
- $email->addCc("test+4@example.com", "Example User4");
- $ccEmails = [
- "test+5@example.com" => "Example User5",
- "test+6@example.com" => "Example User6"
- ];
- $email->addCcs($ccEmails);
-
- $email->addBcc("test+7@example.com", "Example User7");
- $bccEmails = [
- "test+8@example.com" => "Example User8",
- "test+9@example.com" => "Example User9"
- ];
- $email->addBccs($bccEmails);
-
- $email->addHeader("X-Test1", "Test1");
- $email->addHeader("X-Test2", "Test2");
- $headers = [
- "X-Test3" => "Test3",
- "X-Test4" => "Test4",
- ];
- $email->addHeaders($headers);
-
- $email->addSubstitution("%name1%", "Example Name 1");
- $email->addSubstitution("%city1%", "Denver");
- $substitutions = [
- "%name2%" => "Example Name 2",
- "%city2%" => "Orange"
- ];
- $email->addSubstitutions($substitutions);
-
- $email->addCustomArg("marketing1", "false");
- $email->addCustomArg("transactional1", "true");
- $email->addCustomArg("category", "name");
- $customArgs = [
- "marketing2" => "true",
- "transactional2" => "false",
- "category" => "name"
- ];
- $email->addCustomArgs($customArgs);
-
- $email->setSendAt(1461775051);
-
- // The values below this comment are global to entire message
-
- $email->setFrom("test@example.com", "DX");
-
- $email->setGlobalSubject("Sending with Twilio SendGrid is Fun and Global 2");
-
- $email->addContent(
- "text/plain",
- "and easy to do anywhere, even with PHP"
- );
- $email->addContent(
- "text/html",
- "<strong>and easy to do anywhere, even with PHP</strong>"
- );
- $contents = [
- "text/calendar" => "Party Time!!",
- "text/calendar2" => "Party Time 2!!"
- ];
- $email->addContents($contents);
-
- $email->addAttachment(
- "base64 encoded content1",
- "image/png",
- "banner.png",
- "inline",
- "Banner"
- );
- $attachments = [
- [
- "base64 encoded content2",
- "banner2.jpeg",
- "image/jpeg",
- "attachment",
- "Banner 3"
- ],
- [
- "base64 encoded content3",
- "banner3.gif",
- "image/gif",
- "inline",
- "Banner 3"
- ]
- ];
- $email->addAttachments($attachments);
-
- $email->setTemplateId("13b8f94f-bcae-4ec6-b752-70d6cb59f932");
-
- $email->addGlobalHeader("X-Day", "Monday");
- $globalHeaders = [
- "X-Month" => "January",
- "X-Year" => "2017"
- ];
- $email->addGlobalHeaders($globalHeaders);
-
- $email->addSection("%section1%", "Substitution for Section 1 Tag");
- $sections = [
- "%section3%" => "Substitution for Section 3 Tag",
- "%section4%" => "Substitution for Section 4 Tag"
- ];
- $email->addSections($sections);
-
- $email->addCategory("Category 1");
- $categories = [
- "Category 2",
- "Category 3"
- ];
- $email->addCategories($categories);
-
- $email->setBatchId(
- "MWQxZmIyODYtNjE1Ni0xMWU1LWI3ZTUtMDgwMDI3OGJkMmY2LWEzMmViMjYxMw"
- );
-
- $email->setReplyTo("dx+replyto2@example.com", "DX Team Reply To 2");
-
- $email->setAsm(1, [1, 2, 3, 4]);
-
- $email->setIpPoolName("23");
-
- // Mail Settings
- $email->setBccSettings(true, "bcc@example.com");
- $email->enableBypassListManagement();
- //$email->disableBypassListManagement();
- $email->setFooter(true, "Footer", "<strong>Footer</strong>");
- $email->enableSandBoxMode();
- //$email->disableSandBoxMode();
- $email->setSpamCheck(true, 1, "http://mydomain.com");
-
- // Tracking Settings
- $email->setClickTracking(true, true);
- $email->setOpenTracking(true, "--sub--");
- $email->setSubscriptionTracking(
- true,
- "subscribe",
- "<bold>subscribe</bold>",
- "%%sub%%"
- );
- $email->setGanalytics(
- true,
- "utm_source",
- "utm_medium",
- "utm_term",
- "utm_content",
- "utm_campaign"
- );
-
- $json = json_encode($email->jsonSerialize());
- $isEqual = BaseTestClass::compareJSONObjects($json, $this->REQUEST_OBJECT);
- $this->assertTrue($isEqual);
- }
-
- /**
- * Test all parameters without using objects with dynamic templates
- */
- public function testKitchenSinkExampleWithoutObjectsWithDynamicTemplates()
- {
- $email = new \SendGrid\Mail\Mail();
-
- // For a detailed description of each of these settings,
- // please see the
- // [documentation](https://sendgrid.com/docs/API_Reference/api_v3.html).
- $email->setSubject("Sending with Twilio SendGrid is Fun 2");
-
- $email->addTo("test@example.com", "Example User");
- $email->addTo("test+1@example.com", "Example User1");
- $toEmails = [
- "test+2@example.com" => "Example User2",
- "test+3@example.com" => "Example User3"
- ];
- $email->addTos($toEmails);
-
- $email->addCc("test+4@example.com", "Example User4");
- $ccEmails = [
- "test+5@example.com" => "Example User5",
- "test+6@example.com" => "Example User6"
- ];
- $email->addCcs($ccEmails);
-
- $email->addBcc("test+7@example.com", "Example User7");
- $bccEmails = [
- "test+8@example.com" => "Example User8",
- "test+9@example.com" => "Example User9"
- ];
- $email->addBccs($bccEmails);
-
- $email->addHeader("X-Test1", "Test1");
- $email->addHeader("X-Test2", "Test2");
- $headers = [
- "X-Test3" => "Test3",
- "X-Test4" => "Test4",
- ];
- $email->addHeaders($headers);
-
- $email->addDynamicTemplateData('object', [
- 'key1' => 'Key 1',
- 'key2' => 'Key 2',
- ]);
- $email->addDynamicTemplateData('boolean', false);
- $email->addDynamicTemplateData('array', [
- 'index0',
- 'index1',
- ]);
- $email->addDynamicTemplateData('number', 1);
-
- $email->addCustomArg("marketing1", "false");
- $email->addCustomArg("transactional1", "true");
- $email->addCustomArg("category", "name");
- $customArgs = [
- "marketing2" => "true",
- "transactional2" => "false",
- "category" => "name"
- ];
- $email->addCustomArgs($customArgs);
-
- $email->setSendAt(1461775051);
-
- // The values below this comment are global to entire message
-
- $email->setFrom("test@example.com", "DX");
-
- $email->setGlobalSubject("Sending with Twilio SendGrid is Fun and Global 2");
-
- $email->addContent(
- "text/plain",
- "and easy to do anywhere, even with PHP"
- );
- $email->addContent(
- "text/html",
- "<strong>and easy to do anywhere, even with PHP</strong>"
- );
- $contents = [
- "text/calendar" => "Party Time!!",
- "text/calendar2" => "Party Time 2!!"
- ];
- $email->addContents($contents);
-
- $email->addAttachment(
- "base64 encoded content1",
- "image/png",
- "banner.png",
- "inline",
- "Banner"
- );
- $attachments = [
- [
- "base64 encoded content2",
- "banner2.jpeg",
- "image/jpeg",
- "attachment",
- "Banner 3"
- ],
- [
- "base64 encoded content3",
- "banner3.gif",
- "image/gif",
- "inline",
- "Banner 3"
- ]
- ];
- $email->addAttachments($attachments);
-
- $email->setTemplateId("d-13b8f94fbcae4ec6b75270d6cb59f932");
-
- $email->addGlobalHeader("X-Day", "Monday");
- $globalHeaders = [
- "X-Month" => "January",
- "X-Year" => "2017"
- ];
- $email->addGlobalHeaders($globalHeaders);
-
- $email->addSection("%section1%", "Substitution for Section 1 Tag");
- $sections = [
- "%section3%" => "Substitution for Section 3 Tag",
- "%section4%" => "Substitution for Section 4 Tag"
- ];
- $email->addSections($sections);
-
- $email->addCategory("Category 1");
- $categories = [
- "Category 2",
- "Category 3"
- ];
- $email->addCategories($categories);
-
- $email->setBatchId(
- "MWQxZmIyODYtNjE1Ni0xMWU1LWI3ZTUtMDgwMDI3OGJkMmY2LWEzMmViMjYxMw"
- );
-
- $email->setReplyTo("dx+replyto2@example.com", "DX Team Reply To 2");
-
- $email->setAsm(1, [1, 2, 3, 4]);
-
- $email->setIpPoolName("23");
-
- // Mail Settings
- $email->setBccSettings(true, "bcc@example.com");
- $email->enableBypassListManagement();
- //$email->disableBypassListManagement();
- $email->setFooter(true, "Footer", "<strong>Footer</strong>");
- $email->enableSandBoxMode();
- //$email->disableSandBoxMode();
- $email->setSpamCheck(true, 1, "http://mydomain.com");
-
- // Tracking Settings
- $email->setClickTracking(true, true);
- $email->setOpenTracking(true, "--sub--");
- $email->setSubscriptionTracking(
- true,
- "subscribe",
- "<bold>subscribe</bold>",
- "%%sub%%"
- );
- $email->setGanalytics(
- true,
- "utm_source",
- "utm_medium",
- "utm_term",
- "utm_content",
- "utm_campaign"
- );
-
- $json = json_encode($email->jsonSerialize());
- $isEqual = BaseTestClass::compareJSONObjects($json, $this->REQUEST_OBJECT_DYNAMIC);
- $this->assertTrue($isEqual);
- }
-
-
- /**
- * Test all parameters using objects
- */
- public function testKitchenSinkExampleWithObjects()
- {
- $email = new \SendGrid\Mail\Mail();
-
- // For a detailed description of each of these settings,
- // please see the
- // [documentation](https://sendgrid.com/docs/API_Reference/api_v3.html).
- $email->setSubject(
- new \SendGrid\Mail\Subject("Sending with Twilio SendGrid is Fun 2")
- );
-
- $email->addTo(new \SendGrid\Mail\To("test@example.com", "Example User"));
- $email->addTo(new \SendGrid\Mail\To("test+1@example.com", "Example User1"));
- $toEmails = [
- new \SendGrid\Mail\To("test+2@example.com", "Example User2"),
- new \SendGrid\Mail\To("test+3@example.com", "Example User3")
- ];
- $email->addTos($toEmails);
-
- $email->addCc(new \SendGrid\Mail\Cc("test+4@example.com", "Example User4"));
- $ccEmails = [
- new \SendGrid\Mail\Cc("test+5@example.com", "Example User5"),
- new \SendGrid\Mail\Cc("test+6@example.com", "Example User6")
- ];
- $email->addCcs($ccEmails);
-
- $email->addBcc(
- new \SendGrid\Mail\Bcc("test+7@example.com", "Example User7")
- );
- $bccEmails = [
- new \SendGrid\Mail\Bcc("test+8@example.com", "Example User8"),
- new \SendGrid\Mail\Bcc("test+9@example.com", "Example User9")
- ];
- $email->addBccs($bccEmails);
-
- $email->addHeader(new \SendGrid\Mail\Header("X-Test1", "Test1"));
- $email->addHeader(new \SendGrid\Mail\Header("X-Test2", "Test2"));
- $headers = [
- new \SendGrid\Mail\Header("X-Test3", "Test3"),
- new \SendGrid\Mail\Header("X-Test4", "Test4")
- ];
- $email->addHeaders($headers);
-
- $email->addSubstitution(
- new \SendGrid\Mail\Substitution("%name1%", "Example Name 1")
- );
- $email->addSubstitution(
- new \SendGrid\Mail\Substitution("%city1%", "Denver")
- );
- $substitutions = [
- new \SendGrid\Mail\Substitution("%name2%", "Example Name 2"),
- new \SendGrid\Mail\Substitution("%city2%", "Orange")
- ];
- $email->addSubstitutions($substitutions);
-
- $email->addCustomArg(new \SendGrid\Mail\CustomArg("marketing1", "false"));
- $email->addCustomArg(new \SendGrid\Mail\CustomArg("transactional1", "true"));
- $email->addCustomArg(new \SendGrid\Mail\CustomArg("category", "name"));
- $customArgs = [
- new \SendGrid\Mail\CustomArg("marketing2", "true"),
- new \SendGrid\Mail\CustomArg("transactional2", "false"),
- new \SendGrid\Mail\CustomArg("category", "name")
- ];
- $email->addCustomArgs($customArgs);
-
- $email->setSendAt(new \SendGrid\Mail\SendAt(1461775051));
-
- // The values below this comment are global to entire message
-
- $email->setFrom(new \SendGrid\Mail\From("test@example.com", "DX"));
-
- $email->setGlobalSubject(
- new \SendGrid\Mail\Subject("Sending with Twilio SendGrid is Fun and Global 2")
- );
-
- $plainTextContent = new \SendGrid\Mail\PlainTextContent(
- "and easy to do anywhere, even with PHP"
- );
- $htmlContent = new \SendGrid\Mail\HtmlContent(
- "<strong>and easy to do anywhere, even with PHP</strong>"
- );
- $email->addContent($plainTextContent);
- $email->addContent($htmlContent);
- $contents = [
- new \SendGrid\Mail\Content("text/calendar", "Party Time!!"),
- new \SendGrid\Mail\Content("text/calendar2", "Party Time 2!!")
- ];
- $email->addContents($contents);
-
- $email->addAttachment(
- new \SendGrid\Mail\Attachment(
- "base64 encoded content1",
- "image/png",
- "banner.png",
- "inline",
- "Banner"
- )
- );
- $attachments = [
- new \SendGrid\Mail\Attachment(
- "base64 encoded content2",
- "banner2.jpeg",
- "image/jpeg",
- "attachment",
- "Banner 3"
- ),
- new \SendGrid\Mail\Attachment(
- "base64 encoded content3",
- "banner3.gif",
- "image/gif",
- "inline",
- "Banner 3"
- )
- ];
- $email->addAttachments($attachments);
-
- $email->setTemplateId(
- new \SendGrid\Mail\TemplateId("13b8f94f-bcae-4ec6-b752-70d6cb59f932")
- );
-
- $email->addGlobalHeader(new \SendGrid\Mail\Header("X-Day", "Monday"));
- $globalHeaders = [
- new \SendGrid\Mail\Header("X-Month", "January"),
- new \SendGrid\Mail\Header("X-Year", "2017")
- ];
- $email->addGlobalHeaders($globalHeaders);
-
- $email->addSection(
- new \SendGrid\Mail\Section(
- "%section1%",
- "Substitution for Section 1 Tag"
- )
- );
-
- $sections = [
- new \SendGrid\Mail\Section(
- "%section3%",
- "Substitution for Section 3 Tag"
- ),
- new \SendGrid\Mail\Section(
- "%section4%",
- "Substitution for Section 4 Tag"
- )
- ];
- $email->addSections($sections);
-
- $email->addCategory(new \SendGrid\Mail\Category("Category 1"));
- $categories = [
- new \SendGrid\Mail\Category("Category 2"),
- new \SendGrid\Mail\Category("Category 3")
- ];
- $email->addCategories($categories);
-
- $email->setBatchId(
- new \SendGrid\Mail\BatchId(
- "MWQxZmIyODYtNjE1Ni0xMWU1LWI3ZTUtMDgwMDI3OGJkMmY2LWEzMmViMjYxMw"
- )
- );
-
- $email->setReplyTo(
- new \SendGrid\Mail\ReplyTo(
- "dx+replyto2@example.com",
- "DX Team Reply To 2"
- )
- );
-
- $asm = new \SendGrid\Mail\Asm(
- new \SendGrid\Mail\GroupId(1),
- new \SendGrid\Mail\GroupsToDisplay([1, 2, 3, 4])
- );
- $email->setAsm($asm);
-
- $email->setIpPoolName(new \SendGrid\Mail\IpPoolName("23"));
-
- $mail_settings = new \SendGrid\Mail\MailSettings();
- $mail_settings->setBccSettings(
- new \SendGrid\Mail\BccSettings(true, "bcc@example.com")
- );
- $mail_settings->setBypassListManagement(
- new \SendGrid\Mail\BypassListManagement(true)
- );
- $mail_settings->setFooter(
- new \SendGrid\Mail\Footer(true, "Footer", "<strong>Footer</strong>")
- );
- $mail_settings->setSandBoxMode(new \SendGrid\Mail\SandBoxMode(true));
- $mail_settings->setSpamCheck(
- new \SendGrid\Mail\SpamCheck(true, 1, "http://mydomain.com")
- );
- $email->setMailSettings($mail_settings);
-
- $tracking_settings = new \SendGrid\Mail\TrackingSettings();
- $tracking_settings->setClickTracking(
- new \SendGrid\Mail\ClickTracking(true, true)
- );
- $tracking_settings->setOpenTracking(
- new \SendGrid\Mail\OpenTracking(true, "--sub--")
- );
- $tracking_settings->setSubscriptionTracking(
- new \SendGrid\Mail\SubscriptionTracking(
- true,
- "subscribe",
- "<bold>subscribe</bold>",
- "%%sub%%"
- )
- );
- $tracking_settings->setGanalytics(
- new \SendGrid\Mail\Ganalytics(
- true,
- "utm_source",
- "utm_medium",
- "utm_term",
- "utm_content",
- "utm_campaign"
- )
- );
- $email->setTrackingSettings($tracking_settings);
-
- $json = json_encode($email->jsonSerialize());
- $isEqual = BaseTestClass::compareJSONObjects($json, $this->REQUEST_OBJECT);
- $this->assertTrue($isEqual);
- }
-
- /**
- * Test all parameters using objects with dynamic templates
- */
- public function testKitchenSinkExampleWithObjectsWithDynamicTemplate()
- {
- $email = new \SendGrid\Mail\Mail();
-
- // For a detailed description of each of these settings,
- // please see the
- // [documentation](https://sendgrid.com/docs/API_Reference/api_v3.html).
- $email->setSubject(
- new \SendGrid\Mail\Subject("Sending with Twilio SendGrid is Fun 2")
- );
-
- $email->addTo(new \SendGrid\Mail\To("test@example.com", "Example User"));
- $email->addTo(new \SendGrid\Mail\To("test+1@example.com", "Example User1"));
- $toEmails = [
- new \SendGrid\Mail\To("test+2@example.com", "Example User2"),
- new \SendGrid\Mail\To("test+3@example.com", "Example User3")
- ];
- $email->addTos($toEmails);
-
- $email->addCc(new \SendGrid\Mail\Cc("test+4@example.com", "Example User4"));
- $ccEmails = [
- new \SendGrid\Mail\Cc("test+5@example.com", "Example User5"),
- new \SendGrid\Mail\Cc("test+6@example.com", "Example User6")
- ];
- $email->addCcs($ccEmails);
-
- $email->addBcc(
- new \SendGrid\Mail\Bcc("test+7@example.com", "Example User7")
- );
- $bccEmails = [
- new \SendGrid\Mail\Bcc("test+8@example.com", "Example User8"),
- new \SendGrid\Mail\Bcc("test+9@example.com", "Example User9")
- ];
- $email->addBccs($bccEmails);
-
- $email->addHeader(new \SendGrid\Mail\Header("X-Test1", "Test1"));
- $email->addHeader(new \SendGrid\Mail\Header("X-Test2", "Test2"));
- $headers = [
- new \SendGrid\Mail\Header("X-Test3", "Test3"),
- new \SendGrid\Mail\Header("X-Test4", "Test4")
- ];
- $email->addHeaders($headers);
-
- $email->addDynamicTemplateData(
- new \SendGrid\Mail\Substitution('object', [
- 'key1' => 'Key 1',
- 'key2' => 'Key 2',
- ])
- );
- $email->addDynamicTemplateData(
- new \SendGrid\Mail\Substitution('boolean', false)
- );
- $email->addDynamicTemplateDatas([
- new \SendGrid\Mail\Substitution('array', [
- 'index0',
- 'index1',
- ]),
- new \SendGrid\Mail\Substitution('number', 1),
- ]);
-
- $email->addCustomArg(new \SendGrid\Mail\CustomArg("marketing1", "false"));
- $email->addCustomArg(new \SendGrid\Mail\CustomArg("transactional1", "true"));
- $email->addCustomArg(new \SendGrid\Mail\CustomArg("category", "name"));
- $customArgs = [
- new \SendGrid\Mail\CustomArg("marketing2", "true"),
- new \SendGrid\Mail\CustomArg("transactional2", "false"),
- new \SendGrid\Mail\CustomArg("category", "name")
- ];
- $email->addCustomArgs($customArgs);
-
- $email->setSendAt(new \SendGrid\Mail\SendAt(1461775051));
-
- // The values below this comment are global to entire message
-
- $email->setFrom(new \SendGrid\Mail\From("test@example.com", "DX"));
-
- $email->setGlobalSubject(
- new \SendGrid\Mail\Subject("Sending with Twilio SendGrid is Fun and Global 2")
- );
-
- $plainTextContent = new \SendGrid\Mail\PlainTextContent(
- "and easy to do anywhere, even with PHP"
- );
- $htmlContent = new \SendGrid\Mail\HtmlContent(
- "<strong>and easy to do anywhere, even with PHP</strong>"
- );
- $email->addContent($plainTextContent);
- $email->addContent($htmlContent);
- $contents = [
- new \SendGrid\Mail\Content("text/calendar", "Party Time!!"),
- new \SendGrid\Mail\Content("text/calendar2", "Party Time 2!!")
- ];
- $email->addContents($contents);
-
- $email->addAttachment(
- new \SendGrid\Mail\Attachment(
- "base64 encoded content1",
- "image/png",
- "banner.png",
- "inline",
- "Banner"
- )
- );
- $attachments = [
- new \SendGrid\Mail\Attachment(
- "base64 encoded content2",
- "banner2.jpeg",
- "image/jpeg",
- "attachment",
- "Banner 3"
- ),
- new \SendGrid\Mail\Attachment(
- "base64 encoded content3",
- "banner3.gif",
- "image/gif",
- "inline",
- "Banner 3"
- )
- ];
- $email->addAttachments($attachments);
-
- $email->setTemplateId(
- new \SendGrid\Mail\TemplateId("d-13b8f94fbcae4ec6b75270d6cb59f932")
- );
-
- $email->addGlobalHeader(new \SendGrid\Mail\Header("X-Day", "Monday"));
- $globalHeaders = [
- new \SendGrid\Mail\Header("X-Month", "January"),
- new \SendGrid\Mail\Header("X-Year", "2017")
- ];
- $email->addGlobalHeaders($globalHeaders);
-
- $email->addSection(
- new \SendGrid\Mail\Section(
- "%section1%",
- "Substitution for Section 1 Tag"
- )
- );
-
- $sections = [
- new \SendGrid\Mail\Section(
- "%section3%",
- "Substitution for Section 3 Tag"
- ),
- new \SendGrid\Mail\Section(
- "%section4%",
- "Substitution for Section 4 Tag"
- )
- ];
- $email->addSections($sections);
-
- $email->addCategory(new \SendGrid\Mail\Category("Category 1"));
- $categories = [
- new \SendGrid\Mail\Category("Category 2"),
- new \SendGrid\Mail\Category("Category 3")
- ];
- $email->addCategories($categories);
-
- $email->setBatchId(
- new \SendGrid\Mail\BatchId(
- "MWQxZmIyODYtNjE1Ni0xMWU1LWI3ZTUtMDgwMDI3OGJkMmY2LWEzMmViMjYxMw"
- )
- );
-
- $email->setReplyTo(
- new \SendGrid\Mail\ReplyTo(
- "dx+replyto2@example.com",
- "DX Team Reply To 2"
- )
- );
-
- $asm = new \SendGrid\Mail\Asm(
- new \SendGrid\Mail\GroupId(1),
- new \SendGrid\Mail\GroupsToDisplay([1, 2, 3, 4])
- );
- $email->setAsm($asm);
-
- $email->setIpPoolName(new \SendGrid\Mail\IpPoolName("23"));
-
- $mail_settings = new \SendGrid\Mail\MailSettings();
- $mail_settings->setBccSettings(
- new \SendGrid\Mail\BccSettings(true, "bcc@example.com")
- );
- $mail_settings->setBypassListManagement(
- new \SendGrid\Mail\BypassListManagement(true)
- );
- $mail_settings->setFooter(
- new \SendGrid\Mail\Footer(true, "Footer", "<strong>Footer</strong>")
- );
- $mail_settings->setSandBoxMode(new \SendGrid\Mail\SandBoxMode(true));
- $mail_settings->setSpamCheck(
- new \SendGrid\Mail\SpamCheck(true, 1, "http://mydomain.com")
- );
- $email->setMailSettings($mail_settings);
-
- $tracking_settings = new \SendGrid\Mail\TrackingSettings();
- $tracking_settings->setClickTracking(
- new \SendGrid\Mail\ClickTracking(true, true)
- );
- $tracking_settings->setOpenTracking(
- new \SendGrid\Mail\OpenTracking(true, "--sub--")
- );
- $tracking_settings->setSubscriptionTracking(
- new \SendGrid\Mail\SubscriptionTracking(
- true,
- "subscribe",
- "<bold>subscribe</bold>",
- "%%sub%%"
- )
- );
- $tracking_settings->setGanalytics(
- new \SendGrid\Mail\Ganalytics(
- true,
- "utm_source",
- "utm_medium",
- "utm_term",
- "utm_content",
- "utm_campaign"
- )
- );
- $email->setTrackingSettings($tracking_settings);
-
- $json = json_encode($email->jsonSerialize());
- $isEqual = BaseTestClass::compareJSONObjects($json, $this->REQUEST_OBJECT_DYNAMIC);
- $this->assertTrue($isEqual);
- }
-} \ No newline at end of file