Ejemplo n.º 1
0
        public void DeleteStockCommandHandler_NotExisting_NoChange()
        {
            //given
            var repository = LiteDbHelper.CreateMemoryDb();
            var handler    = new DeleteStockCommandHandler(repository);
            var command    = new DeleteStockCommand(new Stock());

            //when
            handler.Execute(command);

            //then
            Assert.Empty(repository.Database.Query <Stock>());
        }
Ejemplo n.º 2
0
        public void DeleteStockCommandHandler_MoreObjects_RemovedProperOne()
        {
            //given
            var targetStock = new Stock();
            var stocks      = new[] { targetStock, new Stock(), new Stock(), new Stock() };
            var repository  = LiteDbHelper.CreateMemoryDb();
            var handler     = new DeleteStockCommandHandler(repository);
            var command     = new DeleteStockCommand(targetStock);

            repository.Database.UpsertBulk(stocks);

            //when
            handler.Execute(command);

            //then
            stocks = stocks.Skip(1).OrderBy(x => x.Id).ToArray();
            var actualStocks = repository.Database.Query <Stock>().OrderBy(x => x.Id).ToArray();

            Assert.Equal(stocks.Length, actualStocks.Length);
            Assert.Equal(stocks, actualStocks);
        }
Ejemplo n.º 3
0
        public async Task DeleteAsync()
        {
            var dataAccess = new StockDataAccess(this.Context, Mapper());
            //Act
            var sutCreate    = new CreateStockCommandHandler(dataAccess);
            var resultCreate = await sutCreate.Handle(new CreateStockCommand
            {
                Data = StockTestData.StockDTO
            }, CancellationToken.None);


            //Act
            var sutDelete     = new DeleteStockCommandHandler(dataAccess);
            var outcomeDelete = await sutDelete.Handle(new DeleteStockCommand
            {
                Id = resultCreate.Data.Id
            }, CancellationToken.None);

            //Assert
            Assert.IsTrue(outcomeDelete.Succeeded);
        }