예제 #1
0
        public Summary(string title, IList <BenchmarkReport> reports, HostEnvironmentInfo hostEnvironmentInfo, IConfig config, string resultsDirectoryPath, TimeSpan totalTime, ValidationError[] validationErrors)
            : this(title, hostEnvironmentInfo, config, resultsDirectoryPath, totalTime, validationErrors)
        {
            Benchmarks = reports.Select(r => r.Benchmark).ToArray();
            foreach (var report in reports)
            {
                reportMap[report.Benchmark] = report;
            }
            Reports = Benchmarks.Select(b => reportMap[b]).ToArray();

            orderProvider = config.GetOrderProvider() ?? DefaultOrderProvider.Instance;
            Benchmarks    = orderProvider.GetSummaryOrder(Benchmarks, this).ToArray();
            Reports       = Benchmarks.Select(b => reportMap[b]).ToArray();

            Table       = GetTable(config.GetSummaryStyle());
            shortInfos  = new Dictionary <Job, string>();
            jobs        = new Lazy <Job[]>(() => Benchmarks.Select(b => b.Job).ToArray());
            AllRuntimes = BuildAllRuntimes();
        }