Beispiel #1
0
        public async void AddBookFailForNegativePurchasePrice()
        {
            var mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.Setup(a => a.SaveAsync());
            var addBookCommandHandler = new AddBookCommandHandler(_repositoryMock, mockUnitOfWork.Object);
            var addBookCommand        = new AddBookCommand
            {
                Name          = "test1",
                Text          = "Test Author",
                PurchasePrice = -5
            };

            await Assert.ThrowsAsync <ValidateException>(() => addBookCommandHandler.HandleAsync(addBookCommand));
        }
Beispiel #2
0
        public async void AddBookSuccess()
        {
            var mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.Setup(a => a.SaveAsync());
            var addBookCommandHandler = new AddBookCommandHandler(_repositoryMock, mockUnitOfWork.Object);
            var addBookCommand        = new AddBookCommand
            {
                Name          = "test1",
                Text          = "Test Author",
                PurchasePrice = 5
            };

            await addBookCommandHandler.HandleAsync(addBookCommand);

            var dbCheck = _repositoryMock as MockBookRepository <Book>;

            Assert.Single(dbCheck.Table);
            Assert.Contains(dbCheck.Table.Values, a => a.Name == addBookCommand.Name && a.Text == addBookCommand.Text && a.PurchasePrice == addBookCommand.PurchasePrice);
        }