public void Handle_Throw_A_ValidationException_When_No_Group_Found() { // Arrange var sut = new AddPersonCommandHandler(_PersonManagerRepository.Object, _unitOfWork.Object); // Assert Assert.ThrowsAsync <ValidationException>(() => sut.Handle(NewAddPersonCommand(), new CancellationToken())); }
public async Task Handle_Uses_SaveAllAsync_From_IUnitOfWork_To_Save_Into_The_Database() { // Arrange _PersonManagerRepository.Setup(r => r.GetAsync(It.IsAny <int>())).ReturnsAsync(NewGroup()); var sut = new AddPersonCommandHandler(_PersonManagerRepository.Object, _unitOfWork.Object); // Act await sut.Handle(NewAddPersonCommand(), new CancellationToken()); // Assert _unitOfWork.Verify(u => u.SaveAllAsync(), Times.Once); }
public async Task Handle_Uses_GetAsync_From_IGroupRepository_To_Retrieve_The_Group_By_Id() { // Arrange _PersonManagerRepository.Setup(r => r.GetAsync(It.IsAny <int>())).ReturnsAsync(NewGroup()); var sut = new AddPersonCommandHandler(_PersonManagerRepository.Object, _unitOfWork.Object); // Act await sut.Handle(NewAddPersonCommand(), new CancellationToken()); // Assert _PersonManagerRepository.Verify(r => r.GetAsync(It.IsAny <int>()), Times.Once); }
public async Task Handle_Uses_Update_From_IGroupRepository_To_Update_The_Group_Into_The_Context() { // Arrange _PersonManagerRepository.Setup(r => r.GetAsync(It.IsAny <int>())).ReturnsAsync(NewGroup()); var sut = new AddPersonCommandHandler(_PersonManagerRepository.Object, _unitOfWork.Object); // Act await sut.Handle(NewAddPersonCommand(), new CancellationToken()); // Assert _PersonManagerRepository.Verify(r => r.Update(It.Is <Group>(g => g.Persons.Any())), Times.Once); }