public void CreateMimeMessage() { var message = new SendGrid(); var attachment = Path.GetTempFileName(); var text = "this is a test"; var html = "<b>This<\b> is a better test"; var headers = new KeyValuePair<String, String>("custom", "header"); message.AddAttachment(attachment); message.Text = text; message.Html = html; message.AddTo("*****@*****.**"); message.From = new MailAddress("*****@*****.**"); message.AddHeaders(new Dictionary<string, string> {{headers.Key, headers.Value}}); message.EnableGravatar(); var mime = message.CreateMimeMessage(); var sr = new StreamReader(mime.AlternateViews[0].ContentStream); var result = sr.ReadToEnd(); Assert.AreEqual(text, result); sr = new StreamReader(mime.AlternateViews[1].ContentStream); result = sr.ReadToEnd(); Assert.AreEqual(html, result); result = mime.Headers.Get(headers.Key); Assert.AreEqual(headers.Value, result); result = mime.Headers.Get("X-Smtpapi"); var expected = "{\"filters\" : {\"gravatar\" : {\"settings\" : {\"enable\" : \"1\"}}}}"; Assert.AreEqual(expected, result); result = mime.Attachments[0].Name; Assert.AreEqual(Path.GetFileName(attachment), result); }
public void TestAddAttachment() { var foo = new Mock<IHeader>(); var sg = new SendGrid(foo.Object); sg.AddAttachment("pnunit.framework.dll"); sg.AddAttachment("pnunit.framework.dll"); //Assert.AreEqual(data.ContentStream, sg.Attachments.First().ContentStream, "Attach via path"); //Assert.AreEqual(data.ContentStream, sg.Attachments.Skip(1).First().ContentStream, "Attach via path x2"); sg = new SendGrid(foo.Object); //sg.AddAttachment(data); //sg.AddAttachment(data); //Assert.AreEqual(data.ContentStream, sg.Attachments.First().ContentStream, "Attach via attachment"); //Assert.AreEqual(data.ContentStream, sg.Attachments.Skip(1).First().ContentStream, "Attach via attachment x2"); sg = new SendGrid(foo.Object); //sg.AddAttachment(data.ContentStream, data.ContentType); //sg.AddAttachment(data.ContentStream, data.ContentType); //Assert.AreEqual(data.ContentStream, sg.Attachments.First().ContentStream, "Attach via stream"); //Assert.AreEqual(data.ContentStream, sg.Attachments.Skip(1).First().ContentStream, "Attach via stream x2"); }