github.com/supabase/cli@v1.168.1/internal/testing/fstest/open.go (about) 1 package fstest 2 3 import ( 4 "io/fs" 5 "os" 6 "strings" 7 8 "github.com/spf13/afero" 9 ) 10 11 type OpenErrorFs struct { 12 afero.MemMapFs 13 DenyPath string 14 } 15 16 func (m *OpenErrorFs) OpenFile(name string, flag int, perm os.FileMode) (afero.File, error) { 17 if strings.HasPrefix(name, m.DenyPath) { 18 return nil, fs.ErrPermission 19 } 20 return m.MemMapFs.OpenFile(name, flag, perm) 21 } 22 23 func (m *OpenErrorFs) Open(name string) (afero.File, error) { 24 if strings.HasPrefix(name, m.DenyPath) { 25 return nil, fs.ErrPermission 26 } 27 return m.MemMapFs.Open(name) 28 }