github.com/devseccon/trivy@v0.47.1-0.20231123133102-bd902a0bd996/pkg/module/memfs_test.go (about) 1 package module 2 3 import ( 4 "io" 5 "os" 6 "strings" 7 "testing" 8 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestMemFS(t *testing.T) { 13 m := &memFS{} 14 require.Nil(t, m.current) 15 16 const path, content = "/usr/foo/bar.txt", "my-content" 17 err := m.initialize(path, strings.NewReader(content)) 18 require.NoError(t, err) 19 require.NotNil(t, m.current) 20 21 t.Run("happy", func(t *testing.T) { 22 f, err := m.Open(path) 23 require.NoError(t, err) 24 actual, err := io.ReadAll(f) 25 require.NoError(t, err) 26 require.Equal(t, content, string(actual)) 27 }) 28 29 t.Run("not found", func(t *testing.T) { 30 _, err = m.Open(path + "tmp") 31 require.ErrorIs(t, err, os.ErrNotExist) 32 }) 33 }