protected override void WriteCore(SecurityCheckPiplineResult securityCheckExecutionResult) { Console.WriteLine(); Console.WriteIntent(2); Console.WriteLine("Report Summary"); var checkNameColumnSize = securityCheckExecutionResult.Max(s => s.SecurityCheck.Name.Length); var valueColumnSize = securityCheckExecutionResult.Max(s => s.SecurityCheckResult.Value.Length); var groupedByType = securityCheckExecutionResult.GroupBy(r => r.SecurityCheck.Category); foreach (var group in groupedByType) { Console.WriteLine(); Console.WriteIntent(4); Console.WriteLine($"> {group.Key} checks"); Console.WriteLine(); foreach (var item in group) { Write(item, valueColumnSize, checkNameColumnSize); } } }
protected override void WriteCore(SecurityCheckPiplineResult securityCheckExecutionResult) { using (var textWriter = TextWriterFactory()) { textWriter.WriteLine(securityCheckExecutionResult.Url); textWriter.WriteLine(securityCheckExecutionResult.DateTime); textWriter.WriteLine("Report Summary"); var maxNameLenght = securityCheckExecutionResult.Max(r => r.SecurityCheck.Name.Length); var groupedByType = securityCheckExecutionResult.GroupBy(r => r.SecurityCheck.Category); foreach (var group in groupedByType) { textWriter.WriteLine(); textWriter.WriteLine($"> {group.Key} checks"); textWriter.WriteLine(); foreach (var item in group) { Write(textWriter, item, maxNameLenght); } } textWriter.Flush(); } }