summaryrefslogtreecommitdiffstats
path: root/vendor/mime/benches
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:20:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:20:29 +0000
commit631cd5845e8de329d0e227aaa707d7ea228b8f8f (patch)
treea1b87c8f8cad01cf18f7c5f57a08f102771ed303 /vendor/mime/benches
parentAdding debian version 1.69.0+dfsg1-1. (diff)
downloadrustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.tar.xz
rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.zip
Merging upstream version 1.70.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/mime/benches')
-rw-r--r--vendor/mime/benches/cmp.rs46
-rw-r--r--vendor/mime/benches/fmt.rs19
-rw-r--r--vendor/mime/benches/parse.rs29
3 files changed, 94 insertions, 0 deletions
diff --git a/vendor/mime/benches/cmp.rs b/vendor/mime/benches/cmp.rs
new file mode 100644
index 000000000..b7c64f64f
--- /dev/null
+++ b/vendor/mime/benches/cmp.rs
@@ -0,0 +1,46 @@
+#![feature(test)]
+
+extern crate mime;
+extern crate test;
+
+use mime::*;
+use test::Bencher;
+
+#[bench]
+fn bench_eq_parsed(b: &mut Bencher) {
+ let mime = "text/plain; charset=utf-8".parse::<Mime>().unwrap();
+ b.bytes = mime.as_ref().len() as u64;
+ b.iter(|| {
+ assert_eq!(mime, TEXT_PLAIN_UTF_8);
+ })
+}
+
+#[bench]
+fn bench_eq_consts(b: &mut Bencher) {
+ let mime = TEXT_PLAIN_UTF_8;
+ b.bytes = mime.as_ref().len() as u64;
+ b.iter(|| {
+ assert_eq!(mime, TEXT_PLAIN_UTF_8);
+ });
+}
+
+
+#[bench]
+fn bench_ne_consts(b: &mut Bencher) {
+ let one = TEXT_XML;
+ let two = TEXT_CSS;
+ b.bytes = one.as_ref().len() as u64;
+ b.iter(|| {
+ assert_ne!(one, two);
+ });
+}
+
+#[bench]
+fn bench_eq_type_(b: &mut Bencher) {
+ let mime = TEXT_PLAIN_UTF_8;
+ let name = TEXT;
+ b.bytes = name.as_ref().len() as u64;
+ b.iter(|| {
+ assert_eq!(mime.type_(), name);
+ });
+}
diff --git a/vendor/mime/benches/fmt.rs b/vendor/mime/benches/fmt.rs
new file mode 100644
index 000000000..106de1a1e
--- /dev/null
+++ b/vendor/mime/benches/fmt.rs
@@ -0,0 +1,19 @@
+#![feature(test)]
+
+extern crate mime;
+extern crate test;
+
+use test::Bencher;
+
+#[bench]
+fn bench_fmt(b: &mut Bencher) {
+ use std::fmt::Write;
+ let mime = ::mime::TEXT_PLAIN_UTF_8;
+ b.bytes = mime.to_string().as_bytes().len() as u64;
+ let mut s = String::with_capacity(64);
+ b.iter(|| {
+ let _ = write!(s, "{}", mime);
+ ::test::black_box(&s);
+ unsafe { s.as_mut_vec().set_len(0); }
+ })
+}
diff --git a/vendor/mime/benches/parse.rs b/vendor/mime/benches/parse.rs
new file mode 100644
index 000000000..7d47781a0
--- /dev/null
+++ b/vendor/mime/benches/parse.rs
@@ -0,0 +1,29 @@
+#![feature(test)]
+
+extern crate mime;
+extern crate test;
+
+use mime::Mime;
+use test::Bencher;
+
+
+#[bench]
+fn bench_from_str(b: &mut Bencher) {
+ let s = "text/plain";
+ b.bytes = s.as_bytes().len() as u64;
+ b.iter(|| s.parse::<Mime>())
+}
+
+#[bench]
+fn bench_from_str_charset_utf8(b: &mut Bencher) {
+ let s = "text/plain; charset=utf-8";
+ b.bytes = s.as_bytes().len() as u64;
+ b.iter(|| s.parse::<Mime>())
+}
+
+#[bench]
+fn bench_from_str_extended(b: &mut Bencher) {
+ let s = "text/plain; charset=utf-8; foo=bar";
+ b.bytes = s.as_bytes().len() as u64;
+ b.iter(|| s.parse::<Mime>())
+}