private string GetHtmlCore(string symbol, string usageStats = null) { if (symbol == null || symbol.Length < 3) { return(Markup.Note("Enter at least 3 characters.")); } if (symbol.Length > 260) { return(Markup.Note(string.Format( "Query string is too long (maximum is {0} characters, input is {1} characters)", MaxInputLength, symbol.Length))); } using (Disposable.Timing("Get symbols")) { Stopwatch sw = Stopwatch.StartNew(); var index = _provider.GetRequiredService <Index>(); var query = index.Get(symbol); var result = new ResultsHtmlGenerator(query).Generate(sw, index, usageStats); return(result); } }
public void EndToEnd(string queryString, string expectedHtml) { var testData = new List <DeclaredSymbolInfo> { new DeclaredSymbolInfo() { Name = "Console", Description = "System.Console", // T:System.Console, f907d79481da6ba4 ID = 11847803494810978297UL } }; using (var index = new Index()) { var huffman = Huffman.Create(testData.Select(i => i.Description)); index.indexFinishedPopulating = true; index.huffman = huffman; index.symbols = testData.Select(dsi => new IndexEntry(dsi)).ToList(); index.PopulateSymbolsById(); var query = index.Get(queryString); var actualHtml = new ResultsHtmlGenerator(query).Generate(index: index); Assert.AreEqual(expectedHtml, actualHtml); } }