consistent

master
Bel LaPointe 2021-07-17 19:19:49 -06:00
parent 036c327db4
commit 36a458406f
2 changed files with 58 additions and 45 deletions

View File

@ -2,6 +2,7 @@ package storage
import ( import (
"bytes" "bytes"
"fmt"
"io/ioutil" "io/ioutil"
"local/storage/minio" "local/storage/minio"
"local/storage/rclone" "local/storage/rclone"
@ -51,10 +52,9 @@ func (mock *mock) Close() error {
} }
func TestImplementations(t *testing.T) { func TestImplementations(t *testing.T) {
dir, err := ioutil.TempDir("", "storage_tests_") dir := path.Join(t.TempDir(), "storage_tests")
if err != nil { if err := os.MkdirAll(dir, os.ModePerm); err != nil {
t.Fatalf("cannot create temp dir: %v", err) t.Fatal(err)
return
} }
defer os.RemoveAll(dir) defer os.RemoveAll(dir)
@ -177,7 +177,10 @@ func TestImplementations(t *testing.T) {
type = local type = local
`)) `))
f.Close() f.Close()
rclone, err := rclone.NewRClone(f.Name(), "local:/tmp") if err := os.MkdirAll(path.Join(dir, "rclone"), os.ModePerm); err != nil {
t.Fatal(err)
}
rclone, err := rclone.NewRClone(f.Name(), "local:"+path.Join(dir, "rclone"))
if err != nil { if err != nil {
t.Errorf("cannot make rclone: %v", err) t.Errorf("cannot make rclone: %v", err)
} else { } else {
@ -188,8 +191,15 @@ type = local
validValue := []byte("value") validValue := []byte("value")
for _, db := range cases { for _, db := range cases {
t.Run(fmt.Sprintf("%T", db), func(t *testing.T) {
log.Printf("Trying %T", db) log.Printf("Trying %T", db)
t.Logf(" %T: set", db) t.Logf(" %T: set", db)
if keys, err := db.List([]string{"ns1", "ns2"}); err != nil || len(keys) > 0 {
t.Errorf("%T) cannot List() empty: (%T) %+v: %v", db, err, err, keys)
}
if keys, err := db.List([]string{path.Join("ns1", "ns2")}); err != nil || len(keys) > 0 {
t.Errorf("%T) cannot List() empty w/ /: (%T) %+v: %v", db, err, err, keys)
}
if err := db.Set(validKey, validValue, "ns1", "ns2"); err != nil { if err := db.Set(validKey, validValue, "ns1", "ns2"); err != nil {
t.Errorf("%T) cannot set: %v", db, err) t.Errorf("%T) cannot set: %v", db, err)
} }
@ -231,6 +241,7 @@ type = local
if err := db.Close(); err != nil { if err := db.Close(); err != nil {
t.Errorf("cannot close %T: %v", db, err) t.Errorf("cannot close %T: %v", db, err)
} }
})
} }
} }

View File

@ -123,6 +123,8 @@ func (rc *RClone) List(ns []string, limits ...string) ([]string, error) {
} }
entries, err := f.List("") entries, err := f.List("")
if err != nil { if err != nil {
return nil, nil
// errs on does not exit
return nil, err return nil, err
} }
names := make([]string, 0) names := make([]string, 0)