public void Details_ReturnsTask() { var controller = new AdoptionFilesController(DbContext, _userManager, _emailSender); AdoptionFile adoptionFile = new AdoptionFile(); var result = controller.Details(1); var viewResult = Assert.IsType <Task <IActionResult> >(result); }
public void Edit_ReturnsResult() { var controller = new AdoptionFilesController(DbContext, _userManager, _emailSender); AdoptionFile adoptionFile = new AdoptionFile(); var result = controller.Edit(1, adoptionFile); var viewResult = Assert.IsType <Task <IActionResult> >(result); }
public async Task <IActionResult> Edit(int id, [Bind("Id,AnimalId,ApplicationUserId,Status")] AdoptionFile adoptionFile) { if (id != adoptionFile.Id) { return(NotFound()); } if (ModelState.IsValid) { try { if (adoptionFile.Status == EnumAdoptionStatus.ACEITE) { var animal = _context.Animal.Find(adoptionFile.AnimalId); animal.Adopted = true; _context.Update(animal); await _context.SaveChangesAsync(); } var user = await _userManager.FindByIdAsync(adoptionFile.ApplicationUserId); await _emailSender.SendEmailAsync(user.Email, "Pedido de Adoção", $"<h1> Pedido de Adoção </h1> " + $"<h4> O seu pedido de adoção foi " + adoptionFile.Status); _context.Update(adoptionFile); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!AdoptionFileExists(adoptionFile.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["AnimalId"] = new SelectList(_context.Animal, "Id", "Id", adoptionFile.AnimalId); return(View(adoptionFile)); }
public async Task <IActionResult> Edit(int id, [Bind("AdoptionFormId,AnimalId,ApplicationUserId,Date,Cc,Job,MoreAnimals,HowMany,AnimalTypes,FinanciallyStable,HouseType,NumberOfBedrooms,NumberOfPeople,AnimalTravel,LeaveHouse,Conscious,Accepted")] AdoptionForm adoptionForm) { if (id != adoptionForm.AdoptionFormId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(adoptionForm); await _context.SaveChangesAsync(); AdoptionFile adoptionFile = new AdoptionFile { AnimalId = adoptionForm.AnimalId, ApplicationUserId = adoptionForm.ApplicationUserId, Date = DateTime.Now, Status = EnumAdoptionStatus.PENDENTE, OrderId = adoptionForm.AdoptionFormId }; _context.Add(adoptionFile); await _context.SaveChangesAsync(); var user = await _userManager.FindByIdAsync(adoptionForm.ApplicationUserId); await _emailSender.SendEmailAsync(user.Email, "Pedido de Adoção", $"<h1> Pedido de Adoção </h1> " + $"<h4> O seu pedido de adoção foi submetido com sucesso. Em breve irá obter a sua resposta. </h4> "); } catch (DbUpdateConcurrencyException) { if (!AdoptionFormExists(adoptionForm.AdoptionFormId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["AnimalId"] = new SelectList(_context.Animal, "Id", "Name", adoptionForm.AnimalId); ViewData["ApplicationUserId"] = new SelectList(_context.User, "Id", "Name", adoptionForm.ApplicationUserId); return(View(adoptionForm)); }