Change summary
crates/fuzzy/src/paths.rs | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
Detailed changes
@@ -198,6 +198,25 @@ fn distance_between_paths(path: &Path, relative_to: &Path) -> usize {
let mut path_components = path.components();
let mut relative_components = relative_to.components();
- while path_components.next() == relative_components.next() {}
+ // while path_components.next() == relative_components.next() {}
+
+ while path_components
+ .next()
+ .zip(relative_components.next())
+ .map(|(path_component, relative_component)| path_component == relative_component)
+ .unwrap_or_default()
+ {}
path_components.count() + relative_components.count() + 1
}
+
+#[cfg(test)]
+mod tests {
+ use std::path::Path;
+
+ use super::distance_between_paths;
+
+ #[test]
+ fn test_distance_between_paths_empty() {
+ distance_between_paths(Path::new(""), Path::new(""));
+ }
+}