summaryrefslogtreecommitdiff
path: root/fs_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'fs_test.go')
-rw-r--r--fs_test.go61
1 files changed, 37 insertions, 24 deletions
diff --git a/fs_test.go b/fs_test.go
index f993849..3f04015 100644
--- a/fs_test.go
+++ b/fs_test.go
@@ -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) {