diff options
Diffstat (limited to 'third_party/rust/http/benches/uri.rs')
-rw-r--r-- | third_party/rust/http/benches/uri.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/third_party/rust/http/benches/uri.rs b/third_party/rust/http/benches/uri.rs new file mode 100644 index 0000000000..031c08df2b --- /dev/null +++ b/third_party/rust/http/benches/uri.rs @@ -0,0 +1,32 @@ +#![feature(test)] + +extern crate test; + +use http::Uri; +use test::Bencher; + +#[bench] +fn uri_parse_slash(b: &mut Bencher) { + b.bytes = 1; + b.iter(|| { + "/".parse::<Uri>().unwrap(); + }); +} + +#[bench] +fn uri_parse_relative_medium(b: &mut Bencher) { + let s = "/wp-content/uploads/2010/03/hello-kitty-darth-vader-pink.jpg"; + b.bytes = s.len() as u64; + b.iter(|| { + s.parse::<Uri>().unwrap(); + }); +} + +#[bench] +fn uri_parse_relative_query(b: &mut Bencher) { + let s = "/wp-content/uploads/2010/03/hello-kitty-darth-vader-pink.jpg?foo={bar}|baz%13%11quux"; + b.bytes = s.len() as u64; + b.iter(|| { + s.parse::<Uri>().unwrap(); + }); +} |