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)); }
/// <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)); }
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); }