public async void TestCreateContactBadRequest() { var _provider = InitializeDatabaseProvider(); var _configuration = new Mock <IConfiguration>(); var address = new AddressCreateDto() { StreetInformation = "TestStreet", CityId = 1, StateId = 1, }; var contact = new ContactCreateRequestDto() { Name = "TestEntity", Company = "TestCompany", Email = "TestingEmail", BirthDate = DateTime.Now, Address = address, PersonalPhoneNumber = "1111" }; var controller = new ContactsController(_configuration.Object, _provider, InitializeMapper()); var result = await controller.CreateContact(contact); var actionResult = Assert.IsType <BadRequestObjectResult>(result); Assert.Equal(400, actionResult.StatusCode); }
public async Task <IActionResult> CreateContact([FromBody] ContactCreateRequestDto contactRequest) { var fileValid = string.IsNullOrEmpty(contactRequest.ProfileImageFileName) || ValidFile(contactRequest.ProfileImageFileName); // It's not required so I only mark it invalid when there is a wrong value var addressValid = ValidAddress(contactRequest.Address); if (!ModelState.IsValid || !fileValid || !addressValid) { return(BadRequest(ModelState)); } var contact = _mapper.Map <Contact>(contactRequest); _databaseProvider.CreateContact(contact); await _databaseProvider.Save(); var result = _mapper.Map <ContactSingleResponseDto>(contact); return(CreatedAtAction("GetContact", result)); }
public async void TestCreateContact() { var _provider = InitializeDatabaseProvider(); _provider.AddState(new State() { Name = "TestingState", StateId = 1 }); _provider.AddCity(new City() { Name = "TestingCity", StateId = 1, CityId = 1 }); await _provider.Save(); var address = new AddressCreateDto() { StreetInformation = "TestStreet", CityId = 1, StateId = 1, }; var contact = new ContactCreateRequestDto() { Name = "TestEntity", Company = "TestCompany", Email = "TestingEmail", BirthDate = DateTime.Now, Address = address, PersonalPhoneNumber = "1111" }; var _configuration = new Mock <IConfiguration>(); var controller = new ContactsController(_configuration.Object, _provider, InitializeMapper()); var result = await controller.CreateContact(contact); var actionResult = Assert.IsType <CreatedAtActionResult>(result); Assert.IsType <ContactSingleResponseDto>(actionResult.Value); Assert.Equal(201, actionResult.StatusCode); }