diff options
Diffstat (limited to 'SendGrid/Tests')
-rw-r--r-- | SendGrid/Tests/Properties/AssemblyInfo.cs | 7 | ||||
-rw-r--r-- | SendGrid/Tests/TestSendgrid.cs | 672 | ||||
-rw-r--r-- | SendGrid/Tests/Tests.csproj | 3 | ||||
-rw-r--r-- | SendGrid/Tests/Transport/TestWeb.cs | 109 | ||||
-rw-r--r-- | SendGrid/Tests/packages.config | 13 |
5 files changed, 408 insertions, 396 deletions
diff --git a/SendGrid/Tests/Properties/AssemblyInfo.cs b/SendGrid/Tests/Properties/AssemblyInfo.cs index 4e26c95..8b518a9 100644 --- a/SendGrid/Tests/Properties/AssemblyInfo.cs +++ b/SendGrid/Tests/Properties/AssemblyInfo.cs @@ -1,10 +1,10 @@ using System.Reflection;
-using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
+
[assembly: AssemblyTitle("Tests")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
@@ -17,9 +17,11 @@ using System.Runtime.InteropServices; // Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
+
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
+
[assembly: Guid("ce0ad7f8-ecce-46c6-a057-f7aa74bb3518")]
// Version information for an assembly consists of the following four values:
@@ -32,5 +34,6 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
+
[assembly: AssemblyVersion("1.2.0")]
-[assembly: AssemblyFileVersion("1.2.0")]
+[assembly: AssemblyFileVersion("1.2.0")]
\ No newline at end of file diff --git a/SendGrid/Tests/TestSendgrid.cs b/SendGrid/Tests/TestSendgrid.cs index a005f86..2ab61f7 100644 --- a/SendGrid/Tests/TestSendgrid.cs +++ b/SendGrid/Tests/TestSendgrid.cs @@ -1,346 +1,350 @@ using System;
using System.Collections.Generic;
-using System.Globalization;
using System.IO;
-using System.Linq;
using System.Net.Mail;
-using System.Text;
using NUnit.Framework;
using SendGridMail;
using Smtpapi;
namespace Tests
{
- [TestFixture]
- class TestSendgrid
- {
- [Test]
- public void TestDisableGravatar()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableGravatar();
+ [TestFixture]
+ internal class TestSendgrid
+ {
+ [Test]
+ public void CreateMimeMessage()
+ {
+ var message = SendGrid.GetInstance();
+ 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("foo@bar.com");
+ message.From = new MailAddress("foo@bar.com");
+ 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);
+ }
+
+ [Test]
+ public void DisableBcc()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableBcc();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"bcc\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableBypassListManagement()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableBypassListManagement();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"bypass_list_management\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableClickTracking()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableClickTracking();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"clicktrack\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableFooter()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableFooter();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"footer\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableGoogleAnalytics()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableGoogleAnalytics();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"ganalytics\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableSpamCheck()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableSpamCheck();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"spamcheck\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableTemplate()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableTemplate();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"template\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void DisableUnsubscribe()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableUnsubscribe();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"subscriptiontrack\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void EnableBcc()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ var email = "somebody@someplace.com";
+ sendgrid.EnableBcc(email);
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"bcc\" : {\"settings\" : {\"enable\" : \"1\",\"email\" : \"" + email + "\"}}}}",
+ json);
+ }
+
+ [Test]
+ public void EnableBypassListManagement()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.EnableBypassListManagement();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"bypass_list_management\" : {\"settings\" : {\"enable\" : \"1\"}}}}", json);
+ }
+
+ [Test]
+ public void EnableClickTracking()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+ sendgrid.EnableClickTracking(true);
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"clicktrack\" : {\"settings\" : {\"enable\" : \"1\",\"enable_text\" : \"1\"}}}}",
+ json);
+ }
+
+ [Test]
+ public void EnableFooter()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ var text = "My Text";
+ var html = "<body><p>hello, <% name %></p></body>";
+ var escHtml = "<body><p>hello, <% name %><\\/p><\\/body>";
+
+ sendgrid.EnableFooter(text, html);
+
+ var json = header.JsonString();
+ Assert.AreEqual(
+ "{\"filters\" : {\"footer\" : {\"settings\" : {\"enable\" : \"1\",\"text\\/plain\" : \"" + text +
+ "\",\"text\\/html\" : \"" + escHtml + "\"}}}}", json);
+ }
+
+ [Test]
+ public void EnableGoogleAnalytics()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ var source = "SomeDomain.com";
+ var medium = "Email";
+ var term = "keyword1, keyword2, keyword3";
+ var content = "PG, PG13";
+ var campaign = "my_campaign";
+
+ sendgrid.EnableGoogleAnalytics(source, medium, term, content, campaign);
+
+ var jsonSource = "\"utm_source\" : \"SomeDomain.com\"";
+ var jsonMedium = "\"utm_medium\" : \"" + medium + "\"";
+ var jsonTerm = "\"utm_term\" : \"" + term + "\"";
+ var jsonContent = "\"utm_content\" : \"" + content + "\"";
+ var jsonCampaign = "\"utm_campaign\" : \"" + campaign + "\"";
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"ganalytics\" : {\"settings\" : {\"enable\" : \"1\"," +
+ jsonSource + "," + jsonMedium + "," + jsonTerm + "," + jsonContent + "," + jsonCampaign + "}}}}",
+ json);
+ }
+
+ [Test]
+ public void EnableGravatar()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.EnableGravatar();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"gravatar\" : {\"settings\" : {\"enable\" : \"1\"}}}}", json);
+ }
+
+ [Test]
+ public void EnableOpenTracking()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.EnableOpenTracking();
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"opentrack\" : {\"settings\" : {\"enable\" : \"1\"}}}}", json);
+ }
+
+ [Test]
+ public void EnableSpamCheck()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ var score = 5;
+ var url = "http://www.example.com";
+ sendgrid.EnableSpamCheck(score, url);
+
+ var json = header.JsonString();
+ Assert.AreEqual(
+ "{\"filters\" : {\"spamcheck\" : {\"settings\" : {\"enable\" : \"1\",\"maxscore\" : \"5\",\"url\" : \"http:\\/\\/www.example.com\"}}}}",
+ json);
+ }
+
+ [Test]
+ public void EnableTemplate()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+ var html = "<% hadhdhd %>";
+
+ var escHtml = "<% hadhdhd %>";
+ sendgrid.EnableTemplate(html);
+
+ var json = header.JsonString();
+ Assert.AreEqual(
+ "{\"filters\" : {\"template\" : {\"settings\" : {\"enable\" : \"1\",\"text\\/html\" : \"" + escHtml + "\"}}}}", json);
+
+ escHtml = "bad";
+ Assert.Throws<Exception>(() => sendgrid.EnableTemplate(escHtml));
+ }
+
+ [Test]
+ public void EnableUnsubscribe()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ var text = "<% %>";
+ var html = "<% name %>";
+
+ var jsonText = "\"text\\/plain\" : \"" + text + "\"";
+ var jsonHtml = "\"text\\/html\" : \"" + html + "\"";
+
+ sendgrid.EnableUnsubscribe(text, html);
+
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"subscriptiontrack\" : {\"settings\" : {\"enable\" : \"1\"," +
+ jsonText + "," + jsonHtml + "}}}}", json);
+
+ header = new Header();
+ sendgrid = new SendGrid(header);
+
+ var replace = "John";
+ var jsonReplace = "\"replace\" : \"" + replace + "\"";
+
+ sendgrid.EnableUnsubscribe(replace);
+
+ json = header.JsonString();
+ Assert.AreEqual(
+ "{\"filters\" : {\"subscriptiontrack\" : {\"settings\" : {\"enable\" : \"1\"," + jsonReplace + "}}}}", json);
+
+ text = "bad";
+ html = "<% name %>";
+ Assert.Throws<Exception>(() => sendgrid.EnableUnsubscribe(text, html));
+
+ text = "<% %>";
+ html = "bad";
+ Assert.Throws<Exception>(() => sendgrid.EnableUnsubscribe(text, html));
+ }
+
+ [Test]
+ public void TestDisableGravatar()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableGravatar();
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"gravatar\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void TestDisableOpenTracking()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableOpenTracking();
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"gravatar\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+
+ [Test]
+ public void TestDisableOpenTracking()
+ {
+ var header = new Header();
+ var sendgrid = new SendGrid(header);
+
+ sendgrid.DisableOpenTracking();
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"opentrack\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableClickTracking()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableClickTracking();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"clicktrack\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableSpamCheck()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableSpamCheck();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"spamcheck\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableUnsubscribe()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableUnsubscribe();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"subscriptiontrack\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableFooter()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableFooter();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"footer\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableGoogleAnalytics()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableGoogleAnalytics();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"ganalytics\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableTemplate()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableTemplate();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"template\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableBcc()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableBcc();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"bcc\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void DisableBypassListManagement()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.DisableBypassListManagement();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"bypass_list_management\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
- }
-
- [Test]
- public void EnableGravatar()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.EnableGravatar();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"gravatar\" : {\"settings\" : {\"enable\" : \"1\"}}}}", json);
- }
-
- [Test]
- public void EnableOpenTracking()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.EnableOpenTracking();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"opentrack\" : {\"settings\" : {\"enable\" : \"1\"}}}}", json);
- }
-
- [Test]
- public void EnableClickTracking()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
- bool includePlainText = true;
- sendgrid.EnableClickTracking(includePlainText);
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"clicktrack\" : {\"settings\" : {\"enable\" : \"1\",\"enable_text\" : \"1\"}}}}", json);
- }
-
- [Test]
- public void EnableSpamCheck()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- var score = 5;
- var url = "http://www.example.com";
- sendgrid.EnableSpamCheck(score, url);
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"spamcheck\" : {\"settings\" : {\"enable\" : \"1\",\"maxscore\" : \"5\",\"url\" : \"http:\\/\\/www.example.com\"}}}}", json);
- }
-
- [Test]
- public void EnableUnsubscribe()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- var text = "<% %>";
- var html = "<% name %>";
-
- var jsonText = "\"text\\/plain\" : \"" + text + "\"";
- var jsonHtml = "\"text\\/html\" : \"" + html + "\"";
-
- sendgrid.EnableUnsubscribe(text, html);
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"subscriptiontrack\" : {\"settings\" : {\"enable\" : \"1\","+
- jsonText+","+jsonHtml+"}}}}", json);
-
- header = new Header();
- sendgrid = new SendGrid(header);
-
- var replace = "John";
- var jsonReplace = "\"replace\" : \"" + replace + "\"";
-
- sendgrid.EnableUnsubscribe(replace);
-
- json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"subscriptiontrack\" : {\"settings\" : {\"enable\" : \"1\"," + jsonReplace + "}}}}", json);
-
- text = "bad";
- html = "<% name %>";
- Assert.Throws<Exception>(delegate { sendgrid.EnableUnsubscribe(text, html); });
-
- text = "<% %>";
- html = "bad";
- Assert.Throws<Exception>(delegate { sendgrid.EnableUnsubscribe(text, html); });
-
- }
-
- [Test]
- public void EnableFooter()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- var text = "My Text";
- var html = "<body><p>hello, <% name %></p></body>";
- var escHtml = "<body><p>hello, <% name %><\\/p><\\/body>";
-
- sendgrid.EnableFooter(text, html);
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"footer\" : {\"settings\" : {\"enable\" : \"1\",\"text\\/plain\" : \""+text+"\",\"text\\/html\" : \""+escHtml+"\"}}}}", json);
- }
-
- [Test]
- public void EnableGoogleAnalytics()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- var source = "SomeDomain.com";
- var medium = "Email";
- var term = "keyword1, keyword2, keyword3";
- var content = "PG, PG13";
- var campaign = "my_campaign";
-
- sendgrid.EnableGoogleAnalytics(source, medium, term, content, campaign);
-
- var jsonSource = "\"utm_source\" : \"SomeDomain.com\"";
- var jsonMedium = "\"utm_medium\" : \"" + medium + "\"";
- var jsonTerm = "\"utm_term\" : \"" + term + "\"";
- var jsonContent = "\"utm_content\" : \"" + content + "\"";
- var jsonCampaign = "\"utm_campaign\" : \"" + campaign + "\"";
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"ganalytics\" : {\"settings\" : {\"enable\" : \"1\","+
- jsonSource+","+jsonMedium+","+jsonTerm+","+jsonContent+","+jsonCampaign+"}}}}", json);
- }
-
- [Test]
- public void EnableTemplate()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
- var html = "<% hadhdhd %>";
-
- var escHtml = "<% hadhdhd %>";
- sendgrid.EnableTemplate(html);
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"template\" : {\"settings\" : {\"enable\" : \"1\",\"text\\/html\" : \""+escHtml+"\"}}}}", json);
-
- escHtml = "bad";
- Assert.Throws<Exception>(delegate { sendgrid.EnableTemplate(escHtml); });
- }
-
- [Test]
- public void EnableBcc()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- var email = "somebody@someplace.com";
- sendgrid.EnableBcc(email);
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"bcc\" : {\"settings\" : {\"enable\" : \"1\",\"email\" : \"" + email + "\"}}}}", json);
- }
-
- [Test]
- public void EnableBypassListManagement()
- {
- var header = new Header();
- var sendgrid = new SendGrid(header);
-
- sendgrid.EnableBypassListManagement();
-
- String json = header.JsonString();
- Assert.AreEqual("{\"filters\" : {\"bypass_list_management\" : {\"settings\" : {\"enable\" : \"1\"}}}}", json);
- }
-
- [Test]
- public void CreateMimeMessage()
- {
- var message = SendGrid.GetInstance();
- var attachment = System.IO.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("foo@bar.com");
- message.From = new MailAddress("foo@bar.com");
- 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);
- }
- }
-}
+ var json = header.JsonString();
+ Assert.AreEqual("{\"filters\" : {\"opentrack\" : {\"settings\" : {\"enable\" : \"0\"}}}}", json);
+ }
+ }
+}
\ No newline at end of file diff --git a/SendGrid/Tests/Tests.csproj b/SendGrid/Tests/Tests.csproj index 5ed4999..431250f 100644 --- a/SendGrid/Tests/Tests.csproj +++ b/SendGrid/Tests/Tests.csproj @@ -13,6 +13,8 @@ <FileAlignment>512</FileAlignment>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile />
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
@@ -119,4 +121,5 @@ <Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.13\tools\Microsoft.Bcl.Build.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=317567." HelpKeyword="BCLBUILD2001" />
<Error Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.13\tools\Microsoft.Bcl.Build.targets')" Text="The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317568." HelpKeyword="BCLBUILD2002" />
</Target>
+ <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
</Project>
\ No newline at end of file diff --git a/SendGrid/Tests/Transport/TestWeb.cs b/SendGrid/Tests/Transport/TestWeb.cs index d87a423..18753b4 100644 --- a/SendGrid/Tests/Transport/TestWeb.cs +++ b/SendGrid/Tests/Transport/TestWeb.cs @@ -1,66 +1,67 @@ -using System;
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Mail;
-using System.Text;
using Moq;
using NUnit.Framework;
using SendGridMail;
namespace Tests.Transport
{
- [TestFixture]
- class TestWeb
- {
- [Test]
- public void TestFetchFileBodies()
- {
- var test = Web.GetInstance(new NetworkCredential("foo", "bar"));
- var message = new Mock<ISendGrid>();
- message.SetupProperty(foo => foo.Attachments, null);
- var result = test.FetchFileBodies(message.Object);
- Assert.AreEqual(0, result.Count);
+ [TestFixture]
+ internal class TestWeb
+ {
+ private const string TestUsername = "usr";
+ private const string TestPassword = "psswd";
- message.SetupProperty(foo => foo.Attachments, new string[] {"foo", "bar", "raz"});
- result = test.FetchFileBodies(message.Object);
- Assert.AreEqual(3, result.Count);
- Assert.AreEqual(result[0].Key, "foo");
- Assert.AreEqual(result[1].Key, "bar");
- Assert.AreEqual(result[2].Key, "raz");
- Assert.AreEqual(result[0].Value.Name, "foo");
- Assert.AreEqual(result[1].Value.Name, "bar");
- Assert.AreEqual(result[2].Value.Name, "raz");
- }
+ [Test]
+ public void TestFetchFileBodies()
+ {
+ var test = Web.GetInstance(new NetworkCredential(TestUsername, TestPassword));
+ var message = new Mock<ISendGrid>();
+ message.SetupProperty(foo => foo.Attachments, null);
+ var result = test.FetchFileBodies(message.Object);
+ Assert.AreEqual(0, result.Count);
- [Test]
- public void TestFetchFormParams()
- {
- var bar = Web.GetInstance(new NetworkCredential("usr", "psswd"));
- var message = SendGrid.GetInstance();
- message.AddTo("foo@bar.com");
- message.AddCc("cc@bar.com");
- message.AddBcc("bcc@bar.com");
- message.From = new MailAddress("from@raz.com");
- message.Subject = "subject";
- message.Text = "text";
- message.Html = "html";
- message.AddHeaders(new Dictionary<string, string>{{"headerkey", "headervalue"}});
- message.Header.SetCategory("cat");
+ message.SetupProperty(foo => foo.Attachments, new[] {"foo", "bar", "raz"});
+ result = test.FetchFileBodies(message.Object);
+ Assert.AreEqual(3, result.Count);
+ Assert.AreEqual(result[0].Key, "foo");
+ Assert.AreEqual(result[1].Key, "bar");
+ Assert.AreEqual(result[2].Key, "raz");
+ Assert.AreEqual(result[0].Value.Name, "foo");
+ Assert.AreEqual(result[1].Value.Name, "bar");
+ Assert.AreEqual(result[2].Value.Name, "raz");
+ }
- var result = bar.FetchFormParams(message);
- Assert.True(result.Any(r => r.Key == "api_user" && r.Value == "usr"));
- Assert.True(result.Any(r => r.Key == "api_key" && r.Value == "psswd"));
- Assert.True(result.Any(r => r.Key == "to[]" && r.Value == "foo@bar.com"));
- Assert.True(result.Any(r => r.Key == "cc[]" && r.Value == "cc@bar.com"));
- Assert.True(result.Any(r => r.Key == "bcc[]" && r.Value == "bcc@bar.com"));
- Assert.True(result.Any(r => r.Key == "from" && r.Value == "from@raz.com"));
- Assert.True(result.Any(r => r.Key == "subject" && r.Value == "subject"));
- Assert.True(result.Any(r => r.Key == "text" && r.Value == "text"));
- Assert.True(result.Any(r => r.Key == "html" && r.Value == "html"));
- Assert.True(result.Any(r => r.Key == "headers" && r.Value == "{\"headerkey\":\"headervalue\"}"));
- Assert.True(result.Any(r => r.Key == "x-smtpapi" && r.Value == "{\"category\" : \"cat\"}"));
- Assert.True(result.Any(r => r.Key == "html" && r.Value == "html"));
- }
- }
-}
+ [Test]
+ public void TestFetchFormParams()
+ {
+ var bar = Web.GetInstance(new NetworkCredential(TestUsername, TestPassword));
+ var message = SendGrid.GetInstance();
+ message.AddTo("foo@bar.com");
+ message.AddCc("cc@bar.com");
+ message.AddBcc("bcc@bar.com");
+ message.From = new MailAddress("from@raz.com");
+ message.Subject = "subject";
+ message.Text = "text";
+ message.Html = "html";
+ message.AddHeaders(new Dictionary<string, string> {{"headerkey", "headervalue"}});
+ message.Header.SetCategory("cat");
+
+ var result = bar.FetchFormParams(message);
+ Assert.True(result.Any(r => r.Key == "api_user" && r.Value == TestUsername));
+ Assert.True(result.Any(r => r.Key == "api_key" && r.Value == TestPassword));
+ Assert.True(result.Any(r => r.Key == "to[]" && r.Value == "foo@bar.com"));
+ Assert.True(result.Any(r => r.Key == "cc[]" && r.Value == "cc@bar.com"));
+ Assert.True(result.Any(r => r.Key == "bcc[]" && r.Value == "bcc@bar.com"));
+ Assert.True(result.Any(r => r.Key == "from" && r.Value == "from@raz.com"));
+ Assert.True(result.Any(r => r.Key == "subject" && r.Value == "subject"));
+ Assert.True(result.Any(r => r.Key == "text" && r.Value == "text"));
+ Assert.True(result.Any(r => r.Key == "html" && r.Value == "html"));
+ Assert.True(result.Any(r => r.Key == "headers" && r.Value == "{\"headerkey\":\"headervalue\"}"));
+ Assert.True(result.Any(r => r.Key == "x-smtpapi" && r.Value == "{\"category\" : \"cat\"}"));
+ Assert.True(result.Any(r => r.Key == "html" && r.Value == "html"));
+ }
+ }
+}
\ No newline at end of file diff --git a/SendGrid/Tests/packages.config b/SendGrid/Tests/packages.config index c161894..4030718 100644 --- a/SendGrid/Tests/packages.config +++ b/SendGrid/Tests/packages.config @@ -1,9 +1,10 @@ <?xml version="1.0" encoding="utf-8"?>
+
<packages>
- <package id="Microsoft.Bcl" version="1.1.6" targetFramework="net40" />
- <package id="Microsoft.Bcl.Async" version="1.0.165" targetFramework="net40" />
- <package id="Microsoft.Bcl.Build" version="1.0.13" targetFramework="net40" />
- <package id="Microsoft.Net.Http" version="2.2.18" targetFramework="net40" />
- <package id="NUnit" version="2.5.10.11092" />
- <package id="smtpapi" version="1.0.0" targetFramework="net40" />
+ <package id="Microsoft.Bcl" version="1.1.6" targetFramework="net40" />
+ <package id="Microsoft.Bcl.Async" version="1.0.165" targetFramework="net40" />
+ <package id="Microsoft.Bcl.Build" version="1.0.13" targetFramework="net40" />
+ <package id="Microsoft.Net.Http" version="2.2.18" targetFramework="net40" />
+ <package id="NUnit" version="2.5.10.11092" />
+ <package id="smtpapi" version="1.0.0" targetFramework="net40" />
</packages>
\ No newline at end of file |