fix second gmail case
This commit is contained in:
parent
77f0184276
commit
c2002a06e5
2 changed files with 12 additions and 4 deletions
|
@ -340,9 +340,10 @@ pub(crate) fn is_resp_specials(c: u8) -> bool { c == b']' }
|
|||
rule!(pub resp_specials : u8 => satisfy(is_resp_specials));
|
||||
|
||||
rule!(pub resp_text : ResponseText => alt((
|
||||
// FUCK YOU GMAIL
|
||||
map(delimited(byte(b'['), resp_text_code, byte(b']')),
|
||||
|code| ResponseText { code: Some(code), info: Bytes::from(b"") }),
|
||||
map(pair(
|
||||
delimited(byte(b'['), resp_text_code, byte(b']')),
|
||||
opt(preceded(SP, text)),
|
||||
), |(code, info)| ResponseText { code: Some(code), info: info.unwrap_or_else(|| Bytes::from(b"")) }),
|
||||
|
||||
map(pair(
|
||||
opt(terminated(delimited(byte(b'['), resp_text_code, byte(b']')), SP)),
|
||||
|
|
|
@ -102,7 +102,6 @@ fn test_gmail_is_shit() {
|
|||
let res = response(Bytes::from(b"* OK [HIGHESTMODSEQ 694968]\r\n"))
|
||||
.unwrap()
|
||||
.1;
|
||||
eprintln!("{:?}", res);
|
||||
assert!(matches!(res,
|
||||
Response::Condition(Condition {
|
||||
status: Status::Ok,
|
||||
|
@ -111,4 +110,12 @@ fn test_gmail_is_shit() {
|
|||
})
|
||||
if c == Bytes::from(b"HIGHESTMODSEQ") && d == Bytes::from(b"694968") && e.is_empty()
|
||||
));
|
||||
|
||||
let res = resp_text(Bytes::from(b"[PERMANENTFLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing $Phishing \\*)] Flags permitted.\r".to_vec())).unwrap().1;
|
||||
eprintln!("{:?}", res);
|
||||
eprintln!();
|
||||
|
||||
let res = response(Bytes::from(b"* OK [PERMANENTFLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing $Phishing \\*)] Flags permitted.\r\n".to_vec())).unwrap().1;
|
||||
eprintln!("{:?}", res);
|
||||
assert!(matches!(res, Response::Condition(_)));
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue