Пример #1
0
        private IEnumerable <Hit> ReadHits(DataTable table, QueryData query)
        {
            var logger = new Mock <ILogger>();

            using var highlighter = new LuceneHighlighter(query, logger.Object);
            return(HitsMapper.MapRowsToHits(table.Rows, query, highlighter));
        }
Пример #2
0
        /// <summary>
        /// Create a list of Hits by iterating over mock results.
        /// </summary>
        /// <param name="results">SearchAsync results as a list of rows (mapping column name to value).</param>
        /// <param name="query">Query information used to enrich hits.</param>
        /// <returns>A collection of Hits, one per item in the provided results data.</returns>
        private static IEnumerable <Hit> BuildHits(List <Dictionary <string, object> > results, QueryData query)
        {
            using var table = ToDataTable(results);
            var logger = new Mock <ILogger>();

            using var highlighter = new LuceneHighlighter(query, logger.Object);
            return(HitsMapper.MapRowsToHits(table.Rows, query, highlighter));
        }
Пример #3
0
        private void MapHitTypeAndAssert(DataTable table, QueryData query, object expected)
        {
            var logger = new Mock <ILogger>();

            using var highlighter = new LuceneHighlighter(query, logger.Object);
            var hits = HitsMapper.MapRowsToHits(table.Rows, query, highlighter);
            var hitl = new List <Hit>(hits);

            Assert.AreEqual(1, hitl.Count);

            foreach (var hit in hitl)
            {
                hit.Id = null;
            }

            var hitJson = JToken.FromObject(hitl).First;

            Assert.AreEqual(hitJson["_source"]["column1"], expected);
        }