summaryrefslogtreecommitdiffstats
path: root/SendGrid/UnitTest/UnitTest.cs
diff options
context:
space:
mode:
authorElmer Thomas <elmer@thinkingserious.com>2015-12-11 13:28:24 -0800
committerElmer Thomas <elmer@thinkingserious.com>2015-12-11 13:28:24 -0800
commit2ac9155968c5c6c8cfea138adc4c00524a5f07f6 (patch)
tree2fa2b4e6f3375ef4c8dc8e93ec93b87803d07e16 /SendGrid/UnitTest/UnitTest.cs
parent5391fbe59c8be7e23f4b89786bdca0063d4730d0 (diff)
downloadsendgrid-csharp-2ac9155968c5c6c8cfea138adc4c00524a5f07f6.zip
sendgrid-csharp-2ac9155968c5c6c8cfea138adc4c00524a5f07f6.tar.gz
sendgrid-csharp-2ac9155968c5c6c8cfea138adc4c00524a5f07f6.tar.bz2
Added Suppressions [GET, POST, DELETE]
Diffstat (limited to 'SendGrid/UnitTest/UnitTest.cs')
-rw-r--r--SendGrid/UnitTest/UnitTest.cs46
1 files changed, 46 insertions, 0 deletions
diff --git a/SendGrid/UnitTest/UnitTest.cs b/SendGrid/UnitTest/UnitTest.cs
index 853d59e..eab3481 100644
--- a/SendGrid/UnitTest/UnitTest.cs
+++ b/SendGrid/UnitTest/UnitTest.cs
@@ -155,5 +155,51 @@ namespace UnitTest
Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode);
}
+ [TestFixture]
+ public class Suppressions
+ {
+ static string _baseUri = "https://api.sendgrid.com/";
+ static string _apiKey = Environment.GetEnvironmentVariable("SENDGRID_APIKEY");
+ public Client client = new Client(_apiKey, _baseUri);
+
+ [Test]
+ public void SuppressionsIntegrationTest()
+ {
+ int unsubscribeGroupId = 69;
+
+ TestGet(unsubscribeGroupId);
+ string[] emails = { "example@example.com", "example2@example.com" };
+ TestPost(unsubscribeGroupId, emails);
+ TestDelete(unsubscribeGroupId, "example@example.com");
+ TestDelete(unsubscribeGroupId, "example2@example.com");
+ }
+
+ private void TestGet(int unsubscribeGroupId)
+ {
+ HttpResponseMessage response = client.Suppressions.Get(unsubscribeGroupId).Result;
+ Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
+ string rawString = response.Content.ReadAsStringAsync().Result;
+ dynamic jsonObject = JsonConvert.DeserializeObject(rawString);
+ Assert.IsNotNull(jsonObject);
+ }
+
+ private void TestPost(int unsubscribeGroupId, string[] emails)
+ {
+ HttpResponseMessage response = client.Suppressions.Post(unsubscribeGroupId, emails).Result;
+ Assert.AreEqual(HttpStatusCode.Created, response.StatusCode);
+ string rawString = response.Content.ReadAsStringAsync().Result;
+ dynamic jsonObject = JObject.Parse(rawString);
+ string recipient_emails = jsonObject.recipient_emails.ToString();
+ Assert.IsNotNull(recipient_emails);
+ }
+
+ private void TestDelete(int unsubscribeGroupId, string email)
+ {
+ HttpResponseMessage response = client.Suppressions.Delete(unsubscribeGroupId, email).Result;
+ Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode);
+ }
+
+ }
+
}
}