public async Task CreateAsync_PhoneNumberValidationFailed_ThrowsError() { // Arrange var fixture = new Fixture(); var Person = new PersonUpdateModel(); var expected = fixture.Create <string>(); var PhoneNumberGetService = new Mock <IPhoneNumberGetService>(); PhoneNumberGetService .Setup(x => x.ValidateAsync(Person)) .Throws(new InvalidOperationException(expected)); var PersonDataAccess = new Mock <IPersonDataAccess>(); var PersonGetService = new PersonCreateService(PersonDataAccess.Object, PhoneNumberGetService.Object); // Act var action = new Func <Task>(() => PersonGetService.CreateAsync(Person)); // Assert await action.Should().ThrowAsync <InvalidOperationException>().WithMessage(expected); PersonDataAccess.Verify(x => x.InsertAsync(Person), Times.Never); }
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 TestCreateperson() { Mock <IPersonDataAccess> personDataAccess = new Mock <IPersonDataAccess>(); Person expected = new Person { Id = 1, Name = "Who", Email = "*****@*****.**", PhoneNumber = "89500492805" }; personDataAccess.Setup(x => x.Insert(It.IsAny <PersonUpdateModel>())).Returns(expected); var createService = new PersonCreateService(personDataAccess.Object, new PersonGetService(personDataAccess.Object)); Person person = createService.CreatePerson(new PersonUpdateModel() { Name = "Who", Email = "*****@*****.**", PhoneNumber = "89500492805" }); 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 CreateAsync_PhoneNumberValidationSucceed_CreatesPerson() { // Arrange var Person = new PersonUpdateModel(); var expected = new Person(); var PhoneNumberGetService = new Mock <IPhoneNumberGetService>(); PhoneNumberGetService.Setup(x => x.ValidateAsync(Person)); var PersonDataAccess = new Mock <IPersonDataAccess>(); PersonDataAccess.Setup(x => x.InsertAsync(Person)).ReturnsAsync(expected); var PersonGetService = new PersonCreateService(PersonDataAccess.Object, PhoneNumberGetService.Object); // Act var result = await PersonGetService.CreateAsync(Person); // Assert result.Should().Be(expected); }
public async Task CreateAsync_PersonValidationSucceed_CreatesEmployee() { // Arrange var person = new PersonUpdateModel(); var expected = new Person(); var secretGetService = new Mock <ISecretGetService>(); secretGetService.Setup(x => x.ValidateAsync(person)); var personDataAccess = new Mock <IPersonDataAccess>(); personDataAccess.Setup(x => x.InsertAsync(person)).ReturnsAsync(expected); var personGetService = new PersonCreateService(personDataAccess.Object, secretGetService.Object); // Act var result = await personGetService.CreateAsync(person); // Assert result.Should().Be(expected); }