diff options
Diffstat (limited to 'SendGrid/Tests/TestHeader.cs')
-rwxr-xr-x | SendGrid/Tests/TestHeader.cs | 79 |
1 files changed, 74 insertions, 5 deletions
diff --git a/SendGrid/Tests/TestHeader.cs b/SendGrid/Tests/TestHeader.cs index e4a0814..76025aa 100755 --- a/SendGrid/Tests/TestHeader.cs +++ b/SendGrid/Tests/TestHeader.cs @@ -1,6 +1,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
+using System.Net.Mail;
using System.Text;
using Moq;
using NUnit.Framework;
@@ -12,14 +13,82 @@ namespace Tests public class TestHeader
{
[Test]
- public void TestAddTo()
+ public void TestAddSubVal()
{
- var foo = new Mock<IHeader>();
- foo.Setup(m => m.Enable("foo"));
+ var test = new Header();
+ test.AddSubVal("foo", new List<string>{"bar", "raz"});
+ var result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"sub\" : {\"foo\" : [\"bar\", \"raz\"]}}}", result);
+ }
+
+ [Test]
+ public void TestAddUniqueIdentifier()
+ {
+ var test = new Header();
+ test.AddUniqueIdentifier(new Dictionary<string, string>(){{"foo", "bar"}});
+ var result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"unique_args\" : {\"foo\" : \"bar\"}}}", result);
+ }
+
+ [Test]
+ public void TestSetCategory()
+ {
+ var test = new Header();
+ test.SetCategory("foo");
+ var result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"category\" : \"foo\"}}", result);
+ }
- var bar = new SendGrid(foo.Object);
- Assert.AreEqual(1, 2, "I suck");
+ [Test]
+ public void TestEnable()
+ {
+ var test = new Header();
+ test.Enable("foo");
+ var result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"filters\" : {\"foo\" : {\"settings\" : {\"enable\" : \"1\"}}}}}", result);
+ }
+
+ [Test]
+ public void TestDisable()
+ {
+ var test = new Header();
+ test.Disable("foo");
+ var result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"filters\" : {\"foo\" : {\"settings\" : {\"enable\" : \"0\"}}}}}", result);
+ }
+
+ [Test]
+ public void TestAddFilterSetting()
+ {
+ var test = new Header();
+ test.AddFilterSetting("foo", new List<string> { "a", "b" }, "bar");
+ var result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"filters\" : {\"foo\" : {\"settings\" : {\"a\" : {\"b\" : \"bar\"}}}}}}", result);
+
+ }
+
+ [Test]
+ public void TestAddHeader()
+ {
+ var test = new Header();
+ test.AddSubVal("foo", new List<string> { "a", "b" });
+ var mime = new MailMessage();
+ test.AddHeader(mime);
+ var result = mime.Headers.Get("x-smtpapi");
+ Assert.AreEqual("{\"data\" : {\"sub\" : {\"foo\" : [\"a\", \"b\"]}}}", result);
+ }
+
+ [Test]
+ public void TestAsJson()
+ {
+ var test = new Header();
+ var result = test.AsJson();
+ Assert.AreEqual("", result);
+ test = new Header();
+ test.AddSubVal("foo", new List<string>{"a", "b"});
+ result = test.AsJson();
+ Assert.AreEqual("{\"data\" : {\"sub\" : {\"foo\" : [\"a\", \"b\"]}}}", result);
}
}
}
|