moth/pkg/transpile/mothball_test.go

51 lines
935 B
Go
Raw Normal View History

2020-09-08 17:49:02 -06:00
package transpile
2020-09-04 18:28:23 -06:00
import (
"archive/zip"
"io/ioutil"
2020-09-14 13:40:55 -06:00
"os"
"path"
"runtime"
2020-09-04 18:28:23 -06:00
"testing"
"github.com/spf13/afero"
"github.com/spf13/afero/zipfs"
)
2020-09-14 13:40:55 -06:00
func TestMothballsMemFs(t *testing.T) {
static := NewFsCategory(newTestFs(), "cat1")
if _, err := Mothball(static); err != nil {
t.Error(err)
}
}
func TestMothballsOsFs(t *testing.T) {
_, testfn, _, _ := runtime.Caller(0)
os.Chdir(path.Dir(testfn))
2020-09-04 18:28:23 -06:00
fs := NewRecursiveBasePathFs(afero.NewOsFs(), "testdata")
static := NewFsCategory(fs, "static")
mb, err := Mothball(static)
if err != nil {
t.Error(err)
2020-09-14 13:40:55 -06:00
return
2020-09-04 18:28:23 -06:00
}
mbr, err := zip.NewReader(mb, int64(mb.Len()))
if err != nil {
t.Error(err)
}
zfs := zipfs.New(mbr)
if f, err := zfs.Open("puzzles.txt"); err != nil {
t.Error(err)
} else {
defer f.Close()
if buf, err := ioutil.ReadAll(f); err != nil {
t.Error(err)
} else if string(buf) != "" {
t.Error("Bad puzzles.txt", string(buf))
}
}
}