1
0
Fork 0
mirror of https://github.com/rust-lang/rustlings.git synced 2024-05-28 06:26:07 +02:00

Make "I AM NOT DONE" caseless

This commit is contained in:
mo8it 2024-03-24 22:22:55 +01:00
parent c0c112985b
commit bdf826a026

View File

@ -5,7 +5,7 @@ use std::io::{self, BufRead, BufReader};
use std::path::PathBuf;
use std::process::{self, Command};
use std::{array, env, mem};
use winnow::ascii::{space0, space1};
use winnow::ascii::{space0, Caseless};
use winnow::combinator::opt;
use winnow::Parser;
@ -21,13 +21,7 @@ fn not_done(input: &str) -> bool {
"//",
opt('/'),
space0,
'I',
space1,
"AM",
space1,
"NOT",
space1,
"DONE",
Caseless("I AM NOT DONE"),
)
.parse_next(&mut &*input)
.is_ok()
@ -438,15 +432,13 @@ mod test {
assert!(not_done("/// I AM NOT DONE"));
assert!(not_done("// I AM NOT DONE"));
assert!(not_done("/// I AM NOT DONE"));
assert!(not_done("// I AM NOT DONE"));
assert!(not_done("// I AM NOT DONE"));
assert!(not_done("// I AM NOT DONE"));
assert!(not_done("// I AM NOT DONE "));
assert!(not_done("// I AM NOT DONE!"));
assert!(not_done("// I am not done"));
assert!(not_done("// i am NOT done"));
assert!(!not_done("I AM NOT DONE"));
assert!(!not_done("// NOT DONE"));
assert!(!not_done("DONE"));
assert!(!not_done("// i am not done"));
}
}