github.com/falafeljan/pkger@v0.18.0/pkging/pkgtest/open.go (about) 1 package pkgtest 2 3 import ( 4 "fmt" 5 "io/ioutil" 6 "os" 7 "path/filepath" 8 "testing" 9 10 "github.com/markbates/pkger/pkging" 11 "github.com/stretchr/testify/require" 12 ) 13 14 func OpenTest(t *testing.T, ref *Ref, pkg pkging.Pkger) { 15 r := require.New(t) 16 17 name := "/go.mod" 18 19 osf, err := os.Open(filepath.Join(ref.Dir, name)) 20 r.NoError(err) 21 22 osi, err := osf.Stat() 23 r.NoError(err) 24 25 _, err = LoadFile(name, ref, pkg) 26 r.NoError(err) 27 28 pf, err := pkg.Open(fmt.Sprintf("/%s", name)) 29 r.NoError(err) 30 31 psi, err := pf.Stat() 32 r.NoError(err) 33 34 CmpFileInfo(t, osi, psi) 35 36 osb, err := ioutil.ReadAll(osf) 37 r.NoError(err) 38 r.NoError(osf.Close()) 39 40 psb, err := ioutil.ReadAll(pf) 41 r.NoError(err) 42 r.NoError(pf.Close()) 43 44 r.Equal(osb, psb) 45 }