public void BatchUnsubscribe_Successful() { // Arrange MailChimpManager mc = new MailChimpManager(TestGlobal.Test_APIKey); ListResult lists = mc.GetLists(); List <EmailParameter> emails = new List <EmailParameter>(); EmailParameter email1 = new EmailParameter() { Email = "*****@*****.**" }; EmailParameter email2 = new EmailParameter() { Email = "*****@*****.**" }; emails.Add(email1); emails.Add(email2); // Act BatchUnsubscribeResult results = mc.BatchUnsubscribe(lists.Data[1].Id, emails); // Assert Assert.IsNotNull(results); Assert.IsTrue(results.SuccessCount == 2); }
/// <summary> /// Batches the unsubscribe. /// </summary> /// <param name="recordList">The records</param> public virtual BatchUnsubscribeResult BatchUnsubscribe(IEnumerable <MailChimpEventQueueRecord> recordList) { if (String.IsNullOrEmpty(_mailChimpSettings.DefaultListId)) { throw new ArgumentException("MailChimp list is not specified"); } MailChimpManager mc = new MailChimpManager(_mailChimpSettings.ApiKey); // Create the email parameter List <EmailParameter> emailList = new List <EmailParameter>(); var batch = recordList.Select(sub => sub.Email).ToList(); foreach (var email in batch) { emailList.Add(new EmailParameter() { Email = email }); } BatchUnsubscribeResult listSubscribeOutput = mc.BatchUnsubscribe(_mailChimpSettings.DefaultListId, emailList); return(listSubscribeOutput); }