diff options
Diffstat (limited to 'fs_test.go')
| -rw-r--r-- | fs_test.go | 61 |
1 files changed, 37 insertions, 24 deletions
@@ -1,7 +1,6 @@ package s3 import ( - "io" "testing" "time" @@ -11,86 +10,100 @@ import ( func TestFsListBuckets(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - buckets, err := testListBuckets(fs) + buckets, err := testListBuckets(afs.Fs.(*Fs)) is.NoErr(err) is.Equal(len(buckets), 1) } func TestFsMkdir(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - err = fs.Mkdir("test", 0o644) + err = afs.Mkdir("test", 0o644) is.Equal(err, ErrUnsupported) } func TestFsMkdirAll(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - err = fs.MkdirAll("test1/test2", 0o644) + err = afs.MkdirAll("test1/test2", 0o644) is.Equal(err, ErrUnsupported) } func TestFsChmod(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - err = fs.Chmod("test", 0o644) + err = afs.Chmod("test", 0o644) is.Equal(err, ErrUnsupported) } func TestFsChown(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - err = fs.Chown("test", 1000, 1000) + err = afs.Chown("test", 1000, 1000) is.Equal(err, ErrUnsupported) } func TestFsChtimes(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) now := time.Now() - err = fs.Chtimes("test", now, now) + err = afs.Chtimes("test", now, now) is.Equal(err, ErrUnsupported) } func TestFsStat(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - info, err := fs.Stat("dir/file") + info, err := afs.Stat("dir/file") is.NoErr(err) is.Equal(info.Name(), "file") } func TestFsStatNoExist(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - _, err = fs.Stat("dir/non-existent") + _, err = afs.Stat("dir/non-existent") is.Equal(err, afero.ErrFileNotFound) } func TestFsOpenRead(t *testing.T) { is := is.New(t) - fs, err := newTestFs() + afs, err := newTestAfs() is.NoErr(err) - f, err := fs.Open("dir/file") - is.NoErr(err) - defer f.Close() - b, err := io.ReadAll(f) + b, err := afs.ReadFile("dir/file") is.NoErr(err) is.Equal(b, []byte("test")) } -func newTestFs() (*Fs, error) { +func TestFsReadNoExist(t *testing.T) { + is := is.New(t) + afs, err := newTestAfs() + is.NoErr(err) + _, err = afs.ReadFile("non-existent") + is.Equal(err, afero.ErrFileNotFound) +} + +func TestFsOpenWrite(t *testing.T) { + is := is.New(t) + afs, err := newTestAfs() + is.NoErr(err) + err = afs.WriteFile("dir/file_test", []byte("testdata"), 0) + is.NoErr(err) +} + +func newTestAfs() (*afero.Afero, error) { fs, err := NewFsFromURL("http://testuser:[email protected]:9000/test-bucket") - return fs, err + afs := &afero.Afero{Fs: fs} + return afs, err } func testListBuckets(fs *Fs) ([]string, error) { |
