public async Task SearchByDescriptionQueryHandlerAsync_WithNullParameter_ThrowsException()
        {
            //Arrange
            SearchByDescriptionQueryRequest command = null;

            //Act
            var actualException = await Assert.ThrowsAsync <Exception>(() => _searchByDescriptionQueryHandler.Handle(command, new CancellationToken()));

            //Assert
            Assert.Equal(MessageConstants.SearchByDescriptionQueryRequestNull, actualException.Message);
        }
        //[LoggerAspect]
        public async Task <List <GetProductQueryResponse> > Handle(SearchByDescriptionQueryRequest searchByDescriptionRequest, CancellationToken cancellationToken)
        {
            if (searchByDescriptionRequest == null)
            {
                throw new Exception(MessageConstants.SearchByDescriptionQueryRequestNull);
            }

            if (searchByDescriptionRequest.Description == null)
            {
                throw new Exception(MessageConstants.SearchByDescriptionQueryRequestDescriptionNull);
            }


            var productList = await _unitOfWork.ProductRepository.SearchWithDescription(searchByDescriptionRequest.Description);

            var productResponseList = _mapper.Map <List <GetProductQueryResponse> >(productList);

            return(productResponseList);
        }