public async Task <IActionResult> Create([Bind("Amount")] PrepaidCardViewModel model) { if (!ModelState.IsValid) { return(RedirectToAction(nameof(Index))); } _context.PrepaidCodes.Add(new PrepaidCode { Id = Guid.NewGuid(), Amount = model.Amount, CreationDate = DateTime.Now }); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); }
public async Task Currency_Create_Code_Ok() { var beforeCount = _context.PrepaidCodes.Count(); var amount = 1; var model = new PrepaidCardViewModel { Amount = amount }; var result = await _controller.Create(model); var last = _context.PrepaidCodes.OrderBy(c => c.CreationDate).Last(); Assert.Equal(amount, last.Amount); Assert.Equal(beforeCount + 1, _context.PrepaidCodes.Count()); Assert.IsType <RedirectToActionResult>(result); Assert.Equal("Index", ((RedirectToActionResult)result).ActionName); }
public async Task Currency_Create_Code_Fail1() { var beforeCount = _context.PrepaidCodes.Count(); var amount = -2; var model = new PrepaidCardViewModel { Amount = amount }; if (!Validator.TryValidateObject(model, new ValidationContext(model), null, true)) { _controller.ModelState.AddModelError("err", "Error"); } var result = await _controller.Create(model); Assert.Equal(beforeCount, _context.PrepaidCodes.Count()); Assert.IsType <RedirectToActionResult>(result); Assert.Equal("Index", ((RedirectToActionResult)result).ActionName); }