Merge pull request #137 from link2xt/imap4rev1-case

Update imap-proto and test that "IMAP4REV1" capability is accepted
This commit is contained in:
Jon Gjengset 2019-09-04 11:23:19 -04:00 committed by GitHub
commit 281d2eb8ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 2 deletions

View file

@ -25,8 +25,8 @@ is-it-maintained-open-issues = { repository = "jonhoo/rust-imap" }
native-tls = "0.2.2" native-tls = "0.2.2"
regex = "1.0" regex = "1.0"
bufstream = "0.1" bufstream = "0.1"
imap-proto = "0.8" imap-proto = "0.9.0"
nom = "4.0" nom = "5.0"
base64 = "0.10" base64 = "0.10"
chrono = "0.4" chrono = "0.4"
lazy_static = "1.4" lazy_static = "1.4"

View file

@ -351,6 +351,21 @@ mod tests {
} }
} }
#[test]
fn parse_capability_case_insensitive_test() {
// Test that "IMAP4REV1" (instead of "IMAP4rev1") is accepted
let expected_capabilities = vec!["IMAP4rev1", "STARTTLS"];
let lines = b"* CAPABILITY IMAP4REV1 STARTTLS\r\n";
let (mut send, recv) = mpsc::channel();
let capabilities = parse_capabilities(lines.to_vec(), &mut send).unwrap();
// shouldn't be any unexpected responses parsed
assert!(recv.try_recv().is_err());
assert_eq!(capabilities.len(), 2);
for e in expected_capabilities {
assert!(capabilities.has_str(e));
}
}
#[test] #[test]
#[should_panic] #[should_panic]
fn parse_capability_invalid_test() { fn parse_capability_invalid_test() {