public async Task BadRequest_When_Called_Post_Without_Address() { var model = new CustomerInsertViewModel { Name = "Customer01", Email = "*****@*****.**", PhoneContact = new List <CustomerPhoneContactInsertViewModel> { new CustomerPhoneContactInsertViewModel { Number = "999999999", PhoneType = EnumPhoneType.Landline } } }; _customerController.ModelState.AddModelError("Address", "required"); var result = await _customerController.Post(model); Assert.True(result is BadRequestObjectResult); var badRequestResult = (BadRequestObjectResult)result; Assert.True(badRequestResult.Value is ErrorResponseDto); var resultModel = (ErrorResponseDto)badRequestResult.Value; Assert.Single(resultModel.Errors); Assert.Contains(resultModel.Errors, a => a.Field == "Address"); Assert.Contains(resultModel.Errors, a => a.Messages.All(all => all.ToLower().Contains("required"))); }
public async Task BadRequest_When_Called_Post_Without_PhoneNumber() { var model = new CustomerInsertViewModel { Name = "Customer01", Email = "*****@*****.**", Address = new List <CustomerAddressInsertViewModel> { new CustomerAddressInsertViewModel { City = "AnyCity", State = "AnyState", Country = "AnyCountry", Street = "AnyStreet", ZipCode = "00000-000", Number = 000 } } }; _customerController.ModelState.AddModelError("PhoneNumber", "required"); var result = await _customerController.Post(model); Assert.True(result is BadRequestObjectResult); var badRequestResult = (BadRequestObjectResult)result; Assert.True(badRequestResult.Value is ErrorResponseDto); var resultModel = (ErrorResponseDto)badRequestResult.Value; Assert.Single(resultModel.Errors); Assert.Contains(resultModel.Errors, a => a.Field == "PhoneNumber"); Assert.Contains(resultModel.Errors, a => a.Messages.All(all => all.ToLower().Contains("required"))); }
public async Task BadRequest_When_Called_Post_With_Email_Already_Registered() { await When_Called_Post_Should_Be_Created(); var model = new CustomerInsertViewModel { Name = "Customer 1", Email = "*****@*****.**", Address = new List <CustomerAddressInsertViewModel> { new CustomerAddressInsertViewModel { City = "AnyCity", State = "AnyState", Country = "AnyCountry", Street = "AnyStreet", ZipCode = "00000-000", Number = 000 } }, PhoneContact = new List <CustomerPhoneContactInsertViewModel> { new CustomerPhoneContactInsertViewModel { Number = "999999999", PhoneType = EnumPhoneType.Landline } } }; await Assert.ThrowsAsync <EntityValidationException>(async() => await _customerController.Post(model)); }
public async Task BadRequest_When_Called_Post_With_Invalid_Email() { var model = new CustomerInsertViewModel { Name = "Customer 1", Email = "invalidemailtest", Address = new List <CustomerAddressInsertViewModel> { new CustomerAddressInsertViewModel { City = "AnyCity", State = "AnyState", Country = "AnyCountry", Street = "AnyStreet", ZipCode = "00000-000", Number = 000 } }, PhoneContact = new List <CustomerPhoneContactInsertViewModel> { new CustomerPhoneContactInsertViewModel { Number = "999999999", PhoneType = EnumPhoneType.Landline } } }; _customerController.ModelState.AddModelError("Email", "Invalid Email"); var result = await _customerController.Post(model); Assert.True(result is BadRequestObjectResult); var badRequestResult = (BadRequestObjectResult)result; Assert.True(badRequestResult.Value is ErrorResponseDto); var resultModel = (ErrorResponseDto)badRequestResult.Value; Assert.Single(resultModel.Errors); Assert.Contains(resultModel.Errors, a => a.Field == "Email"); }
public async Task <Guid> When_Called_Post_Should_Be_Created() { await Should_Delete_All_Registers(); var model = new CustomerInsertViewModel { Name = "Customer 1", Email = "*****@*****.**", Address = new List <CustomerAddressInsertViewModel> { new CustomerAddressInsertViewModel { City = "AnyCity", State = "AnyState", Country = "AnyCountry", Street = "AnyStreet", ZipCode = "00000-000", Number = 000 } }, PhoneContact = new List <CustomerPhoneContactInsertViewModel> { new CustomerPhoneContactInsertViewModel { Number = "999999999", PhoneType = EnumPhoneType.Landline } } }; var result = await _customerController.Post(model); var response = (ObjectResult)result; Assert.True(response.Value is Guid); Assert.True(response.StatusCode.Equals(201)); return((Guid)response.Value); }
public ActionResult InsertWithClientValidation(CustomerInsertViewModel model) { return(View(model)); }
public ActionResult Insert(CustomerInsertViewModel model) { return(View(model)); }