public async Task <IActionResult> AddAsync(RedirectMetadata model) { if (!ModelState.IsValid) { model.ErrorMessage = "Invalid options, confirm form validation"; return(View("Add", model)); } var redirect = model.ToRedirect(); var success = await _redirectService.TryCreateAsync(redirect); if (success) { return(RedirectToAction("List", new { highlightId = redirect.RedirectId })); } if (redirect.RedirectId == -1) { model.ErrorMessage = "A link with that name already exists."; return(View("Add", model)); } model.ErrorMessage = "Unknown problem happened. Try again?"; return(View("Add", model)); }
public void RedirectFromMetadataRedirectWorks() { var model = new RedirectMetadata() { Name = "Name", Description = "Description", Target = "https://target.com" }; var redirect = model.ToRedirect(); Assert.AreEqual("Name", redirect.Name); Assert.AreEqual("Description", redirect.Description); Assert.AreEqual("https://target.com", redirect.Target); }