public void TestMapToModel() { var sgHandler = new SendGridHandler(new MailGunHandler()); const string subject = "Test Subject"; const string message = "Test Message."; const string toAddress = "*****@*****.**"; var email = new EmailModel() { Message = message, To = new string[] { toAddress }, Subject = subject, }; var mapped = sgHandler.mapToSendGridEmail(email); Assert.NotNull(mapped); Assert.AreEqual(subject, mapped.subject); Assert.IsTrue(mapped.content.Count == 1); Assert.AreEqual(message, mapped.content[0].value); Assert.IsTrue(mapped.personalizations.Count == 1); Assert.IsTrue(mapped.personalizations[0].to.Count == 1); Assert.AreEqual(toAddress, mapped.personalizations[0].to[0].email); }
public void TestSendEmail() { var sgHandler = new SendGridHandler(new MailGunHandler()); const string subject = "Test Subject"; const string message = "Test Message."; const string toAddress = "*****@*****.**"; var email = new EmailModel() { Message = message, To = new string[] { toAddress }, Subject = subject, }; sgHandler.SendEmail(email); }
public IActionResult Index(MvcIdentityModel identity) { if (!ModelState.IsValid) { return(View("Registration", identity)); } if (!UsernameAvailable(identity.Username)) { ModelState.AddModelError("Username", "This username is already taken!"); return(View("Registration", identity)); } if (!EmailAvailable(identity.Email)) { ModelState.AddModelError("Email", "This email is already in use!"); return(View("Registration", identity)); } var authIdentity = new AuthenticationIdentity() { Email = identity.Email, NewAccount = true, PendingActivation = true }; identity.IpAddress = Request.HttpContext.Connection.RemoteIpAddress.MapToIPv4().ToString(); var activationToken = RandomData.String(16); var pendingActivation = new PendingActivationIdentity() { ActivationToken = activationToken, Identity = identity }; CacheStore.Create(activationToken, DateTime.UtcNow.AddHours(1), pendingActivation); SendGridHandler.SendRegistrationMail(identity, activationToken).Wait(); return(RedirectToAction("Index", "Authentication", authIdentity)); }