starship/benches/benchmarks.rs

46 lines
1.1 KiB
Rust

#![feature(test)]
extern crate test;
#[cfg(test)]
mod tests {
use clap::{App, Arg};
use starship::{modules, print};
use test::Bencher;
#[bench]
fn full_prompt_bench(b: &mut Bencher) {
b.iter(|| {
let args = App::new("starship")
.arg(Arg::with_name("status_code"))
.get_matches_from(vec!["starship", "0"]);
starship::print::prompt(args)
});
}
#[bench]
fn char_section_bench(b: &mut Bencher) {
b.iter(|| {
let args = App::new("starship")
.arg(Arg::with_name("status_code"))
.get_matches_from(vec!["starship", "0"]);
let segment = modules::handle("char", &args);
print::stringify_segment(segment)
});
}
#[bench]
fn dir_section_bench(b: &mut Bencher) {
b.iter(|| {
let args = App::new("starship")
.arg(Arg::with_name("status_code"))
.get_matches_from(vec!["starship", "0"]);
let segment = modules::handle("dir", &args);
print::stringify_segment(segment)
});
}
}