move s3 and local test to their own files

This commit is contained in:
Shane C. 2024-11-20 12:27:45 -05:00
parent 38d9f2fa85
commit 9638e52d26
Signed by: Shane C.
GPG key ID: E46B5FEA35B22FF9
2 changed files with 83 additions and 75 deletions

83
local_test.go Normal file
View file

@ -0,0 +1,83 @@
package fsys
import (
"github.com/stretchr/testify/assert"
"io"
"io/fs"
"testing"
)
func TestStorageLocal(t *testing.T) {
stor, err := New(Config{
Type: "local",
Path: "./test/local",
})
assert.NoError(t, err)
t.Log("== Write ==")
err = stor.Write("test.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
err = stor.Write("testing/1.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
err = stor.Write("testing/2.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
err = stor.Write("testing/test/2.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
t.Log("== Stat ==")
fileInfo, err := stor.Stat("test.txt")
assert.NoError(t, err)
assert.Equal(t, "test.txt", fileInfo.Name)
assert.Equal(t, int64(len("hi")), fileInfo.Size)
assert.Equal(t, fs.FileMode(0600), fileInfo.Mode)
t.Log("== Read ==")
fileContent, err := stor.Read("test.txt")
assert.NoError(t, err)
assert.Equal(t, []byte("hi"), fileContent)
t.Log("== ReadDir ==")
files, err := stor.ReadDir("testing")
assert.NoError(t, err)
assert.Equal(t, 3, len(files))
t.Log("== Copy ==")
err = stor.Copy("test.txt", "test2.txt")
assert.NoError(t, err)
copyFileInfo, err := stor.Stat("test2.txt")
assert.NoError(t, err)
assert.Equal(t, fs.FileMode(0600), copyFileInfo.Mode)
assert.Equal(t, "test2.txt", copyFileInfo.Name)
assert.Equal(t, int64(len("hi")), copyFileInfo.Size)
t.Log("== Move ==")
err = stor.Move("test2.txt", "test3.txt")
assert.NoError(t, err)
moveFileInfo, err := stor.Stat("test3.txt")
assert.NoError(t, err)
assert.Equal(t, fs.FileMode(0600), moveFileInfo.Mode)
assert.Equal(t, "test3.txt", moveFileInfo.Name)
assert.Equal(t, int64(len("hi")), moveFileInfo.Size)
t.Log("== Open ==")
file, err := stor.Open("test.txt")
assert.NoError(t, err)
assert.Equal(t, "test.txt", file.Name)
fileContent, err = io.ReadAll(file)
assert.NoError(t, err)
assert.Equal(t, []byte("hi"), fileContent)
err = file.Close()
assert.NoError(t, err)
t.Log("== Delete ==")
err = stor.Delete("test.txt")
assert.NoError(t, err)
}

View file

@ -7,81 +7,6 @@ import (
"testing"
)
func TestStorageLocal(t *testing.T) {
stor, err := New(Config{
Type: "local",
Path: "./test/local",
})
assert.NoError(t, err)
t.Log("== Write ==")
err = stor.Write("test.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
err = stor.Write("testing/1.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
err = stor.Write("testing/2.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
err = stor.Write("testing/test/2.txt", []byte("hi"), WriteOptions{})
assert.NoError(t, err)
t.Log("== Stat ==")
fileInfo, err := stor.Stat("test.txt")
assert.NoError(t, err)
assert.Equal(t, "test.txt", fileInfo.Name)
assert.Equal(t, int64(len("hi")), fileInfo.Size)
assert.Equal(t, fs.FileMode(0600), fileInfo.Mode)
t.Log("== Read ==")
fileContent, err := stor.Read("test.txt")
assert.NoError(t, err)
assert.Equal(t, []byte("hi"), fileContent)
t.Log("== ReadDir ==")
files, err := stor.ReadDir("testing")
assert.NoError(t, err)
assert.Equal(t, 3, len(files))
t.Log("== Copy ==")
err = stor.Copy("test.txt", "test2.txt")
assert.NoError(t, err)
copyFileInfo, err := stor.Stat("test2.txt")
assert.NoError(t, err)
assert.Equal(t, fs.FileMode(0600), copyFileInfo.Mode)
assert.Equal(t, "test2.txt", copyFileInfo.Name)
assert.Equal(t, int64(len("hi")), copyFileInfo.Size)
t.Log("== Move ==")
err = stor.Move("test2.txt", "test3.txt")
assert.NoError(t, err)
moveFileInfo, err := stor.Stat("test3.txt")
assert.NoError(t, err)
assert.Equal(t, fs.FileMode(0600), moveFileInfo.Mode)
assert.Equal(t, "test3.txt", moveFileInfo.Name)
assert.Equal(t, int64(len("hi")), moveFileInfo.Size)
t.Log("== Open ==")
file, err := stor.Open("test.txt")
assert.NoError(t, err)
assert.Equal(t, "test.txt", file.Name)
fileContent, err = io.ReadAll(file)
assert.NoError(t, err)
assert.Equal(t, []byte("hi"), fileContent)
err = file.Close()
assert.NoError(t, err)
t.Log("== Delete ==")
err = stor.Delete("test.txt")
assert.NoError(t, err)
}
func TestStorageS3(t *testing.T) {
stor, err := New(Config{