diff --git a/yazi-fs/src/mounts/partition.rs b/yazi-fs/src/mounts/partition.rs index ccbab9da..c1a715ee 100644 --- a/yazi-fs/src/mounts/partition.rs +++ b/yazi-fs/src/mounts/partition.rs @@ -25,7 +25,7 @@ impl Partition { // and should be polled for changes. pub fn soundless(&self) -> bool { let b: &[u8] = self.fstype.as_ref().map_or(b"", |s| s.as_encoded_bytes()); - matches!(b, b"fuse.rclone") + matches!(b, b"fuse.rclone" | b"nfs4") } #[rustfmt::skip] @@ -46,6 +46,26 @@ impl Partition { } } +#[cfg(test)] +mod tests { + use super::Partition; + + #[test] + fn soundless_mount_types_include_nfs4() { + let partition = + Partition { fstype: Some("nfs4".into()), ..Default::default() }; + assert!(partition.soundless()); + + let partition = + Partition { fstype: Some("fuse.rclone".into()), ..Default::default() }; + assert!(partition.soundless()); + + let partition = + Partition { fstype: Some("ext4".into()), ..Default::default() }; + assert!(!partition.soundless()); + } +} + impl Partition { #[cfg(any(target_os = "linux", target_os = "macos"))] pub(super) fn new(name: &std::ffi::OsStr) -> Self {