1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
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;
namespace Tests
{
[TestFixture]
public class TestSendgridMessageSetup
{
[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");
}
}
}
|