fix split test

This commit is contained in:
Robin Appelman 2023-03-05 12:54:36 +01:00
commit ee2b872627

View file

@ -160,7 +160,7 @@ impl<'a> Iterator for LineSplit<'a> {
None if self.start < self.input.len() => { None if self.start < self.input.len() => {
let line = &self.input[self.start..]; let line = &self.input[self.start..];
self.start = self.input.len(); self.start = self.input.len();
Some(line) Some(line.trim_end_matches("\n"))
} }
_ => None, _ => None,
} }
@ -171,6 +171,11 @@ impl<'a> Iterator for LineSplit<'a> {
fn test_split() { fn test_split() {
let input = std::fs::read_to_string("test_data/log_2892242.log").unwrap(); let input = std::fs::read_to_string("test_data/log_2892242.log").unwrap();
let split: Vec<_> = LineSplit::new(&input).collect(); let split: Vec<_> = LineSplit::new(&input).collect();
let expected: Vec<_> = input.split("L ").collect(); let expected: Vec<_> = input
.split("L ")
.filter(|line| !line.is_empty())
.map(|line| line.trim_end_matches("\n"))
.collect();
assert_eq!(expected.len(), split.len());
assert_eq!(expected, split); assert_eq!(expected, split);
} }