public void Completes_Transaction_After_Succesful_Run() { var command = new AddPersonWithEmployer(new Worker()); var handler = new AddPersonWithEmployerCommandHandler(_unitOfWorkMock.Object); _unitOfWorkMock .Setup(m => m.Workers.AddWorker(It.IsAny <Worker>())) .Returns(() => true); handler.Handle(command); _unitOfWorkMock.Verify(m => m.Complete(), Times.Once); }
public void Returns_Failed_Result_When_Transaction_With_Database_Throws_Exception() { var command = new AddPersonWithEmployer(new Worker()); var handler = new AddPersonWithEmployerCommandHandler(_unitOfWorkMock.Object); _unitOfWorkMock .Setup(m => m.Workers.AddWorker(It.IsAny <Worker>())) .Returns(() => throw new Exception()); var result = handler.Handle(command); Assert.True(result.IsFailure); }
public void Uses_Persistency_To_Add_New_Worker_Into_Database() { var command = new AddPersonWithEmployer(new Worker()); var handler = new AddPersonWithEmployerCommandHandler(_unitOfWorkMock.Object); _unitOfWorkMock .Setup(m => m.Workers.AddWorker(It.IsAny <Worker>())) .Returns(() => true); handler.Handle(command); _unitOfWorkMock.Verify(m => m.Workers.AddWorker(It.IsAny <Worker>()), Times.Once); }
public void After_Succesful_Transaction_Completes_Operation() { var command = new AddPersonWithEmployer(new Worker()); var handler = new AddPersonWithEmployerCommandHandler(_unitOfWorkMock.Object); _unitOfWorkMock .Setup(m => m.Workers.AddWorker(It.IsAny <Worker>())) .Returns(true); var result = handler.Handle(command); if (result.IsSuccess) { _unitOfWorkMock.Verify(m => m.Complete(), Times.Once); } else { _unitOfWorkMock.Verify(m => m.Complete(), Times.Never); } }