diff --git a/embedfs/embed.go b/embedfs/embed.go index dcdaaae..b30de3f 100644 --- a/embedfs/embed.go +++ b/embedfs/embed.go @@ -92,6 +92,10 @@ func (fs *Embed) ReadDir(path string) ([]fs.DirEntry, error) { return fs.underlying.ReadDir(path) } +func (fs *Embed) Capabilities() billy.Capability { + return billy.ReadCapability | billy.SeekCapability +} + // Chroot is not supported. // // Calls will always return billy.ErrNotSupported. diff --git a/embedfs/embed_test.go b/embedfs/embed_test.go index fa57e60..67c381c 100644 --- a/embedfs/embed_test.go +++ b/embedfs/embed_test.go @@ -354,3 +354,13 @@ func TestJoin(t *testing.T) { }) } } + +func TestCapabilities(t *testing.T) { + fs := New(&testdataDir) + _, ok := fs.(billy.Capable) + assert.True(t, ok) + + want := billy.ReadCapability | billy.SeekCapability + got := billy.Capabilities(fs) + assert.Equal(t, want, got) +}