fparkan/vendor/anstream/benches/wincon.rs
Valentin Popov 1b6a04ca55
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
2024-01-08 01:21:28 +04:00

27 lines
853 B
Rust

use criterion::{black_box, Criterion};
fn wincon(c: &mut Criterion) {
for (name, content) in [
("demo.vte", &include_bytes!("../tests/demo.vte")[..]),
("rg_help.vte", &include_bytes!("../tests/rg_help.vte")[..]),
("rg_linus.vte", &include_bytes!("../tests/rg_linus.vte")[..]),
(
"state_changes",
&b"\x1b]2;X\x1b\\ \x1b[0m \x1bP0@\x1b\\"[..],
),
] {
let mut group = c.benchmark_group(name);
group.bench_function("wincon_bytes", |b| {
b.iter(|| {
let mut state = anstream::adapter::WinconBytes::new();
let stripped = state.extract_next(content).collect::<Vec<_>>();
black_box(stripped)
})
});
}
}
criterion::criterion_group!(benches, wincon);
criterion::criterion_main!(benches);