public async Task TestGetRoutesForAdvanceSearch_PositiveScenario()
        {
            var actualResult = await testCandidate.GetRoutesForAdvanceSearch("141", new Guid("F08AAD61-B83F-463D-95D6-F0583F24644F"));

            Assert.IsNotNull(actualResult);
            Assert.IsTrue(actualResult.Count == 1);
        }
        /// <summary>
        /// Get filtered routes on basis of search text for Advance Search .
        /// </summary>
        /// <param name="searchText">Text to search</param>
        /// <param name="locationId">selected unit's location ID</param>
        /// <returns>Returns list of routes that matches the search text</returns>
        public async Task <List <RouteDTO> > GetRoutesForAdvanceSearch(string searchText, Guid locationId)
        {
            if (string.IsNullOrEmpty(searchText))
            {
                throw new ArgumentNullException(nameof(searchText));
            }

            if (locationId == Guid.Empty)
            {
                throw new ArgumentNullException(nameof(locationId));
            }

            using (loggingHelper.RMTraceManager.StartTrace("Business.GetRouteForAdvanceSearch"))
            {
                string methodName = typeof(DeliveryRouteBusinessService) + "." + nameof(GetRoutesForAdvanceSearch);
                loggingHelper.LogMethodEntry(methodName, LoggerTraceConstants.DeliveryRouteAPIPriority, LoggerTraceConstants.DeliveryRouteBusinessServiceMethodEntryEventId);

                var routeDetails = await deliveryRouteDataService.GetRoutesForAdvanceSearch(searchText, locationId);

                List <RouteDTO> routes = GenericMapper.MapList <RouteDataDTO, RouteDTO>(routeDetails);

                loggingHelper.LogMethodExit(methodName, LoggerTraceConstants.DeliveryRouteAPIPriority, LoggerTraceConstants.DeliveryRouteBusinessServiceMethodExitEventId);

                return(routes);
            }
        }