diff options
author | Eric Becking <eric.becking@sendgrid.com> | 2012-01-11 16:46:13 -0700 |
---|---|---|
committer | Eric Becking <eric.becking@sendgrid.com> | 2012-01-11 16:46:13 -0700 |
commit | 45c5d8c68adf922ebe3f9c9a22244f0e2a951cf5 (patch) | |
tree | 97012ff08366433ec94a44aa8eaec7cf36c5b2ac /SendGrid/Tests/TestSendgridMessageSetup.cs | |
parent | df47dad3c752cce11d13e5460d938ba6801ae808 (diff) | |
download | sendgrid-csharp-45c5d8c68adf922ebe3f9c9a22244f0e2a951cf5.zip sendgrid-csharp-45c5d8c68adf922ebe3f9c9a22244f0e2a951cf5.tar.gz sendgrid-csharp-45c5d8c68adf922ebe3f9c9a22244f0e2a951cf5.tar.bz2 |
functions for SendGrid.cs and tests for the non-filter stuff in SendGrid.cs held in the TestSendgridMessageSetup.cs file
Diffstat (limited to 'SendGrid/Tests/TestSendgridMessageSetup.cs')
-rwxr-xr-x | SendGrid/Tests/TestSendgridMessageSetup.cs | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/SendGrid/Tests/TestSendgridMessageSetup.cs b/SendGrid/Tests/TestSendgridMessageSetup.cs index 6ec4d7b..2e43598 100755 --- a/SendGrid/Tests/TestSendgridMessageSetup.cs +++ b/SendGrid/Tests/TestSendgridMessageSetup.cs @@ -1,7 +1,10 @@ using System;
+using System.Collections;
using System.Collections.Generic;
using System.Linq;
+using System.Net.Mail;
using System.Text;
+using Moq;
using NUnit.Framework;
using SendGridMail;
@@ -13,7 +16,124 @@ namespace Tests [Test]
public void TestAddTo()
{
+ var foo = new Mock<IHeader>();
+ var sg = new SendGrid(foo.Object);
+ sg.AddTo("eric@sendgrid.com");
+ Assert.AreEqual("eric@sendgrid.com", sg.To.First().ToString(), "Single To Address" );
+
+ sg = new SendGrid(foo.Object);
+ var strings = new String[2];
+ strings[0] = "eric@sendgrid.com";
+ strings[1] = "tyler@sendgrid.com";
+ sg.AddTo(strings);
+ Assert.AreEqual("eric@sendgrid.com", sg.To[0].ToString(), "Multiple To addresses, check first one");
+ Assert.AreEqual("tyler@sendgrid.com", sg.To[1].ToString(), "Multiple To addresses, check second one");
+
+ sg = new SendGrid(foo.Object);
+ var a = new Dictionary<String, String>();
+ a.Add("DisplayName", "Eric");
+ var datastruct = new Dictionary<string, IDictionary<string, string>> {{"eric@sendgrid.com", a}};
+ sg.AddTo(datastruct);
+ Assert.AreEqual("Eric", sg.To.First().DisplayName, "Single address with args");
+ }
+
+ [Test]
+ public void TestAddCc()
+ {
+ var foo = new Mock<IHeader>();
+
+ var sg = new SendGrid(foo.Object);
+ sg.AddCc("eric@sendgrid.com");
+ Assert.AreEqual("eric@sendgrid.com", sg.Cc.First().ToString(), "Single CC Address");
+
+ sg = new SendGrid(foo.Object);
+ var strings = new String[2];
+ strings[0] = "eric@sendgrid.com";
+ strings[1] = "tyler@sendgrid.com";
+ sg.AddCc(strings);
+ Assert.AreEqual("eric@sendgrid.com", sg.Cc[0].ToString(), "Multiple CC addresses, check first one");
+ Assert.AreEqual("tyler@sendgrid.com", sg.Cc[1].ToString(), "Multiple CC addresses, check second one");
+
+ sg = new SendGrid(foo.Object);
+ var a = new Dictionary<String, String>();
+ a.Add("DisplayName", "Eric");
+ var datastruct = new Dictionary<string, IDictionary<string, string>> { { "eric@sendgrid.com", a } };
+ sg.AddCc(datastruct);
+ Assert.AreEqual("Eric", sg.Cc.First().DisplayName, "Single CC address with args");
+ }
+
+ [Test]
+ public void TestAddBcc()
+ {
+ var foo = new Mock<IHeader>();
+
+ var sg = new SendGrid(foo.Object);
+ sg.AddBcc("eric@sendgrid.com");
+ Assert.AreEqual("eric@sendgrid.com", sg.Bcc.First().ToString(), "Single Bcc Address");
+
+ sg = new SendGrid(foo.Object);
+ var strings = new String[2];
+ strings[0] = "eric@sendgrid.com";
+ strings[1] = "tyler@sendgrid.com";
+ sg.AddBcc(strings);
+ Assert.AreEqual("eric@sendgrid.com", sg.Bcc[0].ToString(), "Multiple addresses, check first one");
+ Assert.AreEqual("tyler@sendgrid.com", sg.Bcc[1].ToString(), "Multiple addresses, check second one");
+
+ sg = new SendGrid(foo.Object);
+ var a = new Dictionary<String, String>();
+ a.Add("DisplayName", "Eric");
+ var datastruct = new Dictionary<string, IDictionary<string, string>> { { "eric@sendgrid.com", a } };
+ sg.AddBcc(datastruct);
+ Assert.AreEqual("Eric", sg.Bcc.First().DisplayName, "Single address with args");
+ }
+
+ [Test]
+ public void TestSGHeader()
+ {
+ var foo = new Mock<IHeader>();
+ var sg = new SendGrid(foo.Object);
+
+ sg.Subject = "New Test Subject";
+ Assert.AreEqual("New Test Subject", sg.Subject, "Subject set ok");
+ sg.Subject = null;
+ Assert.AreEqual("New Test Subject", sg.Subject, "null subject does not overide previous subject");
+ }
+
+ /*
+ [Test]
+ public void TestAddSubVal()
+ {
+ var header = new Header();
+ var sg = new SendGrid(header);
+
+ var datastruct = new String[2];
+ datastruct[0] = "eric";
+ datastruct[1] = "tyler";
+
+ sg.AddSubVal("-name-", datastruct);
+ Assert.AreEqual("test", sg.Header);
+ }
+ */
+
+
+ [Test]
+ public void TestGetRcpts()
+ {
+ //public IEnumerable<String> GetRecipients()
+ var foo = new Mock<IHeader>();
+ var sg = new SendGrid(foo.Object);
+
+ sg.AddTo("eric@sendgrid.com");
+ sg.AddCc("tyler@sendgrid.com");
+ sg.AddBcc("cj@sendgrid.com");
+ sg.AddBcc("foo@sendgrid.com");
+
+ var rcpts = sg.GetRecipients();
+ Assert.AreEqual("eric@sendgrid.com", rcpts.First(), "getRecipients check To");
+ Assert.AreEqual("tyler@sendgrid.com", rcpts.Skip(1).First(), "getRecipients check Cc");
+ Assert.AreEqual("cj@sendgrid.com", rcpts.Skip(2).First(), "getRecipients check Bcc");
+ Assert.AreEqual("foo@sendgrid.com", rcpts.Skip(3).First(), "getRecipients check Bcc x2");
}
}
}
|