public void Handle_BookCommand_Book_Exist() { // arrange var key = MockBuilder.Key; var book = BookMock.Get(key); MockRepository.Add(book); MockRepository.Commit(); var key2 = MockBuilder.Key; var command = SaveBookCommandMock.Get(key2); command.Title = book.Title; // act var result = Handle(command); // assert result.Should().BeTrue(); var books = MockRepository.Query <Domain.Entities.Book>().ToList(); var bookExpected = BookMock.Get(key2); bookExpected.Title = book.Title; books.Should().BeEquivalentToEntity(MockBuilder.List(bookExpected)); var events = Bus.GetAllPublished <UpdateBookEvent>(ContextNames.Exchange.Book); var eventExpected = UpdateBookEventMock.Get(key2); eventExpected.Title = book.Title; events.Should().BeEquivalentToMessage(MockBuilder.List(eventExpected)); }
public void Handle_BookCommand_With_Category_Not_Existing_Category() { // arrange var key = MockBuilder.Key; var command = SaveBookCommandMock.Create(key) .Default() .WithCategory() .Build(); // act var result = Handle(command); // assert result.Should().BeTrue(); var books = MockRepository.Query <Domain.Entities.Book>() .Include(x => x.Categories) .ThenInclude(x => x.Category) .ToList(); var bookExpected = BookMock.Create(key) .Default() .WithCategory(books[0].Categories[0].Category) .Build(); books.Should().BeEquivalentToEntity(MockBuilder.List(bookExpected)); var events = Bus.GetAllPublished <UpdateBookEvent>(ContextNames.Exchange.Book); var eventExpected = UpdateBookEventMock.Get(key); events.Should().BeEquivalentToMessage(MockBuilder.List(eventExpected)); }