Skip to content

Commit bb47179

Browse files
committed
impl Display for Version
1 parent 47e03e3 commit bb47179

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/version.rs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,34 @@ pub enum Version {
1818
Http3_0,
1919
}
2020

21+
impl std::fmt::Display for Version {
22+
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
23+
f.write_str(match self {
24+
Version::Http0_9 => "HTTP/0.9",
25+
Version::Http1_0 => "HTTP/1.0",
26+
Version::Http1_1 => "HTTP/1.1",
27+
Version::Http2_0 => "HTTP/2.0",
28+
Version::Http3_0 => "HTTP/3.0",
29+
})
30+
}
31+
}
32+
2133
#[cfg(test)]
2234
mod test {
2335
use super::*;
36+
#[test]
37+
fn to_string() {
38+
let output = format!(
39+
"{} {} {} {} {}",
40+
Version::Http0_9,
41+
Version::Http1_0,
42+
Version::Http1_1,
43+
Version::Http2_0,
44+
Version::Http3_0
45+
);
46+
assert_eq!("HTTP/0.9 HTTP/1.0 HTTP/1.1 HTTP/2.0 HTTP/3.0", output);
47+
}
48+
2449
#[test]
2550
fn ord() {
2651
use Version::*;

0 commit comments

Comments
 (0)