public void OrderTest()
        {
            var allResults = new List <FileSearchResults>();

            var singleResult = new FileSearchResults("C:\\MocFile.txt");

            singleResult.FoundedLines.Add(new FoundLine("123", 1, "2017-09-27 18:16:04,180 [41] TRACE e470.Im"));
            singleResult.FoundedLines.Add(new FoundLine("123", 2, "2017-09-27 17:18:04,140 [43] TRACE e470.Ima"));
            singleResult.FoundedLines.Add(new FoundLine("123", 3, "2017-09-27 17:16:05,140 [44] TRACE e470.Im"));
            singleResult.FoundedLines.Add(new FoundLine("123", 4, "2017-09-27 17:18:04,180 [41] TRACE e470.Imb"));
            singleResult.FoundedLines.Add(new FoundLine("123", 5, "2017-09-27 18:16:04,140 [44] TRACE e470.Im"));

            allResults.Add(singleResult);

            var ordered = allResults
                          .SelectMany(r => r.FoundedLines, (r, s) => new { r.FilePath, s.Keyword, s.LineNumber, s.LineText })
                          .OrderBy(r => r.Keyword)
                          .ThenBy(r => r.LineText)
                          .ToList();

            Assert.AreEqual(3, ordered[0].LineNumber);
            Assert.AreEqual(2, ordered[1].LineNumber);
            Assert.AreEqual(4, ordered[2].LineNumber);
            Assert.AreEqual(5, ordered[3].LineNumber);
            Assert.AreEqual(1, ordered[4].LineNumber);
        }
Esempio n. 2
0
        public void Write(FileSearchResults results)
        {
            var filePath = results.FilePath;

            foreach (var foundLine in results.FoundedLines)
            {
                this.writer.WriteLine($"{filePath}:{foundLine.Keyword}:{foundLine.LineNumber}");

                if (this.writeFoundLine)
                {
                    this.writer.WriteLine(foundLine.LineText);
                }
            }
        }
Esempio n. 3
0
 public void Write(FileSearchResults foundLines)
 {
     this.allResults.Add(foundLines);
 }