forked from mini-software/MiniExcel
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProgram.cs
More file actions
28 lines (26 loc) · 921 Bytes
/
Program.cs
File metadata and controls
28 lines (26 loc) · 921 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using BenchmarkDotNet.Running;
using MiniExcelLib.Benchmarks;
using MiniExcelLib.Benchmarks.BenchmarkSections;
if (Environment.GetEnvironmentVariable("BenchmarkMode") == "Automatic")
{
var section = Environment.GetEnvironmentVariable("BenchmarkSection");
var benchmark = section?.ToLowerInvariant().Trim() switch
{
"query" => typeof(QueryExcelBenchmark),
"create" => typeof(CreateExcelBenchmark),
"template" => typeof(TemplateExcelBenchmark),
_ => throw new ArgumentException($"Benchmark section {section} does not exist")
};
BenchmarkRunner.Run(benchmark, BenchmarkConfig.Default, args);
}
else
{
BenchmarkSwitcher
.FromTypes(
[
typeof(QueryExcelBenchmark),
typeof(CreateExcelBenchmark),
typeof(TemplateExcelBenchmark)
])
.Run(args, BenchmarkConfig.Default);
}