public PersonDTO CreatePerson(PersonDTO person) { var updateModel = Mapper.Map <PersonUpdateModel>(person); PersonGetService.ValidatePerson(updateModel); Person res = PersonCreateService.CreatePerson(updateModel); return(Mapper.Map <PersonDTO>(res)); }
public void TestSuccessfullValidatePerson() { personDataAccess.Setup(x => x.Get(It.IsAny <PersonIdentityModel>())).Returns(expected); var getService = new PersonGetService(personDataAccess.Object); Assert.DoesNotThrow(() => getService.ValidatePerson(new PersonUpdateModel() { Name = "Who", PhoneNumber = "89500492805", Email = "*****@*****.**" })); }
public void TestGetPerson() { personDataAccess.Setup(x => x.Get(It.IsAny <PersonIdentityModel>())).Returns(expected); var getService = new PersonGetService(personDataAccess.Object); Person person = getService.GetPerson(new PersonIdentityModel(1)); Assert.AreEqual(person.Name, expected.Name); Assert.AreEqual(person.Id, expected.Id); Assert.AreEqual(person.Email, expected.Email); Assert.AreEqual(person.PhoneNumber, expected.PhoneNumber); }
public async Task ValidateAsync_PersonExists_DoesNothing() { // Arrange var PersonContainer = new Mock <IPersonContainer>(); var Person = new Person(); var PersonDataAccess = new Mock <IPersonDataAccess>(); PersonDataAccess.Setup(x => x.GetByAsync(PersonContainer.Object)).ReturnsAsync(Person); var PersonGetService = new PersonGetService(PersonDataAccess.Object); // Act var action = new Func <Task>(() => PersonGetService.ValidateAsync(PersonContainer.Object)); // Assert await action.Should().NotThrowAsync <Exception>(); }
public async Task ValidateAsync_PersonNotExists_ThrowsError() { // Arrange var fixture = new Fixture(); var id = fixture.Create <int>(); var PersonContainer = new Mock <IPersonContainer>(); PersonContainer.Setup(x => x.PersonId).Returns(id); var Person = new Person(); var PersonDataAccess = new Mock <IPersonDataAccess>(); PersonDataAccess.Setup(x => x.GetByAsync(PersonContainer.Object)).ReturnsAsync((Person)null); var PersonGetService = new PersonGetService(PersonDataAccess.Object); // Act var action = new Func <Task>(() => PersonGetService.ValidateAsync(PersonContainer.Object)); // Assert await action.Should().ThrowAsync <InvalidOperationException>($"Person not found by id {id}"); }
public PersonDTO GetPerson(int id) { return(Mapper.Map <PersonDTO>(PersonGetService.GetPerson(new PersonIdentityModel(id)))); }