public void ConcreteSearchTest()
        {
            //Arrange
            var type = typeof(SearchIssuesByStatus);
            var searchSpecification = new SearchSpecificationDto();

            var service = new SearchSpecificationBox(searchBy.Object);

            //Act
            try
            {
                service.ConcreteSearch(type, searchSpecification);
                return;
            }
            catch (Exception)
            {
                //Assert
                Assert.False(true);
            }
        }
        public async Task SearchTestAsync()
        {
            //Arrange
            var searchSpecification = new SearchSpecificationDto();
            var service             = new SearchSpecificationBox(searchBy.Object);

            var issueCount = new IssueCount()
            {
                FilteredIssue = 2
            };
            var filteredIssueList = new FilteredIssueListDto()
            {
                Count = issueCount
            };

            searchBy.Setup(x => x.SearchIssues(x => x.Id != 0, It.IsAny <Expression <Func <Issue, bool> > >(), searchSpecification))
            .Returns(Task.FromResult(filteredIssueList));

            //Act
            var action = await service.Search(x => x.Id != 0, searchSpecification);

            //Assert
            Assert.Equal(2, action.Count.FilteredIssue);
        }