1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
//go:build js
// +build js
package osfs
import (
"fmt"
"os"
"path/filepath"
"reflect"
"testing"
"github.com/go-git/go-billy/v5"
"github.com/go-git/go-billy/v5/helper/chroot"
"github.com/go-git/go-billy/v5/test"
. "gopkg.in/check.v1"
)
func Test(t *testing.T) { TestingT(t) }
type OSSuite struct {
test.FilesystemSuite
path string
tempCounter int
}
var _ = Suite(&OSSuite{})
func (s *OSSuite) SetUpTest(c *C) {
s.tempCounter++
s.path = fmt.Sprintf("test_%d", s.tempCounter)
s.FilesystemSuite = test.NewFilesystemSuite(New(s.path))
}
func (s *OSSuite) TestOpenDoesNotCreateDir(c *C) {
_, err := s.FS.Open("dir/non-existent")
c.Assert(err, NotNil)
_, err = s.FS.Stat(filepath.Join(s.path, "dir"))
c.Assert(os.IsNotExist(err), Equals, true)
}
func (s *OSSuite) TestCapabilities(c *C) {
_, ok := s.FS.(billy.Capable)
c.Assert(ok, Equals, true)
caps := billy.Capabilities(s.FS)
c.Assert(caps, Equals, billy.DefaultCapabilities&^billy.LockCapability)
}
func TestDefault(t *testing.T) {
want := &chroot.ChrootHelper{} // memfs is wrapped around ChrootHelper.
got := Default
if reflect.TypeOf(got) != reflect.TypeOf(want) {
t.Errorf("wanted Default to be %T got %T", want, got)
}
}
func TestNewAPI(t *testing.T) {
_ = New("/")
}
|