aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/sandbox/mount.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-03-13 00:00:58 +0900
committerOphestra <cat@gensokyo.uk>2025-03-13 00:00:58 +0900
commitf38ba7e923e9017040c67f290e4d8db29685e3ee (patch)
treecf57ff6b5b39c70e678d274e00379272378a2f81 /test/sandbox/mount.go
parentd22145a3926de9710d5bd76ddfde093baca0b51d (diff)
test/sandbox: bypass fields
A field is bypassed if it contains a single null byte. This will never appear in the text format so is safe to use. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'test/sandbox/mount.go')
-rw-r--r--test/sandbox/mount.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/sandbox/mount.go b/test/sandbox/mount.go
index 9c279f87..9a3b58c9 100644
--- a/test/sandbox/mount.go
+++ b/test/sandbox/mount.go
@@ -37,6 +37,18 @@ func (e *Mntent) String() string {
e.FSName, e.Dir, e.Type, e.Opts, e.Freq, e.Passno)
}
+func (e *Mntent) Is(want *Mntent) bool {
+ if want == nil {
+ return e == nil
+ }
+ return (e.FSName == want.FSName || want.FSName == "\x00") &&
+ (e.Dir == want.Dir || want.Dir == "\x00") &&
+ (e.Type == want.Type || want.Type == "\x00") &&
+ (e.Opts == want.Opts || want.Opts == "\x00") &&
+ (e.Freq == want.Freq || want.Freq == -1) &&
+ (e.Passno == want.Passno || want.Passno == -1)
+}
+
func IterMounts(name string, f func(e *Mntent)) error {
m := new(mounts)
m.p = name