diff --git a/lib/fs/filesystem.go b/lib/fs/filesystem.go index dcb8bc87..4449b94e 100644 --- a/lib/fs/filesystem.go +++ b/lib/fs/filesystem.go @@ -79,6 +79,10 @@ type FileInfo interface { // FileMode is similar to os.FileMode type FileMode uint32 +func (fm FileMode) String() string { + return os.FileMode(fm).String() +} + // Usage represents filesystem space usage type Usage struct { Free int64 diff --git a/lib/fs/filesystem_test.go b/lib/fs/filesystem_test.go index 46ca2671..6716d52d 100644 --- a/lib/fs/filesystem_test.go +++ b/lib/fs/filesystem_test.go @@ -98,3 +98,11 @@ func TestCanonicalize(t *testing.T) { } } } + +func TestFileModeString(t *testing.T) { + var fm FileMode = 0777 + exp := "-rwxrwxrwx" + if fm.String() != exp { + t.Fatalf("Got %v, expected %v", fm.String(), exp) + } +}