/// <summary>
            /// Get sales info.
            /// </summary>
            /// <param name="request">Info request.</param>
            /// <param name="cancellationToken">Cancellation token.</param>
            /// <returns>Number of sales DTO.</returns>
            public async Task <IEnumerable <SaleDTO> > Handle(GetSalesQuery request, CancellationToken cancellationToken)
            {
                var entites = await _context.Sales
                              .OrderBy(s => s.Date)
                              .ToArrayAsync(cancellationToken);

                var sales = _mapper.Map <IEnumerable <SaleDTO> >(entites);

                return(sales);
            }
        public async Task Handle_ReturnsCorrectVmAndListCount()
        {
            var query = new GetSalesQuery();

            var handler = new GetSalesQuery.GetSalesQueryHandler(_context, _mapper);

            var result = await handler.Handle(query);

            result.ShouldBeOfType <SalesVm>();
            result.Lists.Count.ShouldBe(5);
        }
        public async Task Handler_ReturnsSalesDTOCollection()
        {
            // Arrange
            var query = new GetSalesQuery();

            // Act
            var handler = new GetSalesQuery.GetSalesQueryHandler(Context, Mapper);

            var result = await handler.Handle(query, CancellationToken.None);

            // Assert
            result.ShouldBeOfType <List <SaleDTO> >();
            result.ShouldNotBeNull();
        }