Skip to content

Commit f6f9bed

Browse files
committed
chore(benchmarks): replace criterion with divan in benchmarks
1 parent 8e772b0 commit f6f9bed

File tree

2 files changed

+19
-24
lines changed

2 files changed

+19
-24
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ version = "0.11"
3737
optional = true
3838

3939
[dev-dependencies]
40-
criterion = "0.5"
40+
divan = "0.1.17"
4141

4242
[[example]]
4343
name = "rev_map"

benches/benchmark.rs

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,26 @@
1-
#[macro_use]
2-
extern crate criterion;
3-
extern crate mime_guess2;
4-
5-
use self::criterion::Criterion;
6-
71
use mime_guess2::from_ext;
82

93
include!("../src/mime_types.rs");
104

11-
/// WARNING: this may take a while!
12-
fn bench_mime_str(c: &mut Criterion) {
13-
c.bench_function("from_ext", |b| {
14-
for (mime_ext, _) in MIME_TYPES {
15-
b.iter(|| from_ext(mime_ext).first_raw());
16-
}
17-
});
5+
fn main() {
6+
// Run registered benchmarks.
7+
divan::main();
188
}
199

20-
fn bench_mime_str_uppercase(c: &mut Criterion) {
21-
c.bench_function("from_ext uppercased", |b| {
22-
let uppercased = MIME_TYPES.into_iter().map(|(s, _)| s.to_uppercase());
23-
24-
for mime_ext in uppercased {
25-
b.iter(|| from_ext(&mime_ext).first_raw());
26-
}
27-
});
10+
/// Benchmark `from_ext` with standard extensions.
11+
#[divan::bench]
12+
fn from_ext_benchmark() {
13+
for (mime_ext, _) in MIME_TYPES {
14+
divan::black_box(from_ext(mime_ext).first_raw());
15+
}
2816
}
2917

30-
criterion_group!(benches, bench_mime_str, bench_mime_str_uppercase);
31-
criterion_main!(benches);
18+
/// Benchmark `from_ext` with uppercased extensions.
19+
#[divan::bench]
20+
fn from_ext_uppercase_benchmark() {
21+
let uppercased: Vec<_> = MIME_TYPES.iter().map(|(s, _)| s.to_uppercase()).collect();
22+
23+
for mime_ext in uppercased {
24+
divan::black_box(from_ext(&mime_ext).first_raw());
25+
}
26+
}

0 commit comments

Comments
 (0)