protected override void Process(UserBroker payload) { //TODO: get database url from application configs. var databaseUrl = "Server=127.0.0.1;Port=5432;User ID=postgres;Password=admin;Database=YouCourse.Library"; var useCase = new UpdateAuthorUseCase(payload.ToDomain(), NHibernateUnitOfWork.Create(databaseUrl)); useCase.Execute(); }
public void Should_update_author() { var authorId = Guid.NewGuid(); var author = Author.Create(authorId, "Marcos Harbs Updated", "http://marcos.harbs.com/imagem_01.jpeg"); var authorDB = Author.Create(authorId, "Marcos Harbs", "http://marcos.harbs.com/imagem.jpeg"); var mockAuthorRepository = new Mock <IAuthorRepository>(); mockAuthorRepository.Setup(mock => mock.GetById(author.Id)).Returns(authorDB); mockAuthorRepository.Setup(mock => mock.AddOrUpdate(authorDB)); var mockUnitOfWork = new Mock <LibraryUnitOfWork>(); mockUnitOfWork.Setup(mock => mock.GetAuthorRepository()).Returns(mockAuthorRepository.Object); var useCase = new UpdateAuthorUseCase(author, mockUnitOfWork.Object); var updatedAuthor = useCase.Execute(); mockAuthorRepository.Verify(mock => mock.GetById(author.Id), Times.Exactly(1)); mockAuthorRepository.Verify(mock => mock.AddOrUpdate(author), Times.Exactly(1)); updatedAuthor.Should().Be(author); }