private static void CompareLogs(TSLintLog actualLog, TSLintLog expectedLog) { actualLog.Count.Should().Be(expectedLog.Count); for (int i = 0; i < actualLog.Count; ++i) { CompareEntries(actualLog[i], expectedLog[i]); } }
public override void Convert(Stream input, IResultLogWriter output, OptionallyEmittedData dataToInsert) { input = input ?? throw new ArgumentNullException(nameof(input)); output = output ?? throw new ArgumentNullException(nameof(output)); TSLintLog tsLintLog = logReader.ReadLog(input); var results = new List <Result>(); foreach (TSLintLogEntry entry in tsLintLog) { results.Add(CreateResult(entry)); } PersistResults(output, results); }
public override void Convert(Stream input, IResultLogWriter output, OptionallyEmittedData dataToInsert) { input = input ?? throw new ArgumentNullException(nameof(input)); output = output ?? throw new ArgumentNullException(nameof(output)); TSLintLog tsLintLog = logReader.ReadLog(input); Tool tool = new Tool { Name = "TSLint" }; var run = new Run() { Tool = tool }; output.Initialize(run); var results = new List <Result>(); foreach (TSLintLogEntry entry in tsLintLog) { results.Add(CreateResult(entry)); } var fileInfoFactory = new FileInfoFactory(MimeType.DetermineFromFileExtension, dataToInsert); Dictionary <string, FileData> fileDictionary = fileInfoFactory.Create(results); if (fileDictionary?.Any() == true) { output.WriteFiles(fileDictionary); } output.OpenResults(); output.WriteResults(results); output.CloseResults(); }
public void TSLintLogReader_ReadLog_ProducesExpectedLog() { const string Input = @" [ { ""endPosition"": { ""character"":1, ""line"":113, ""position"":4429 }, ""failure"":""file should end with a newline"", ""fix"": { ""innerStart"":4429, ""innerLength"":0, ""innerText"":""\r\n"" }, ""name"":""SecureApp/js/index.d.ts"", ""ruleName"":""eofline"", ""ruleSeverity"":""ERROR"", ""startPosition"": { ""character"":1, ""line"":113, ""position"":4429 } } ]"; TSLintLog expectedLog = new TSLintLog { new TSLintLogEntry { EndPosition = new TSLintLogPosition { Character = 1, Line = 113, Position = 4429 }, Failure = "file should end with a newline", Fixes = new List <TSLintLogFix> { new TSLintLogFix { InnerStart = 4429, InnerLength = 0, InnerText = "\r\n" } }, Name = "SecureApp/js/index.d.ts", RuleName = "eofline", RuleSeverity = "ERROR", StartPosition = new TSLintLogPosition { Character = 1, Line = 113, Position = 4429 } } }; TSLintLogReader logReader = new TSLintLogReader(); TSLintLog actualLog = logReader.ReadLog(Input); CompareLogs(actualLog, expectedLog); }