loader revisited
This commit is contained in:
@@ -10,6 +10,7 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
gerr "galaxy/error"
|
||||
"galaxy/model/client"
|
||||
"galaxy/model/order"
|
||||
"galaxy/model/report"
|
||||
@@ -240,10 +241,44 @@ func TestPathTraversalRejected(t *testing.T) {
|
||||
if err == nil {
|
||||
t.Fatalf("write %q unexpectedly succeeded", path)
|
||||
}
|
||||
if !gerr.IsStorage(err) {
|
||||
t.Fatalf("write %q error = %v, want storage classified error", path, err)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestDeleteFileClassifiesAndPreservesNotExist(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
s := newTestStorage(t)
|
||||
|
||||
err := s.DeleteFile("missing.txt")
|
||||
if !gerr.IsStorage(err) {
|
||||
t.Fatalf("DeleteFile() error = %v, want storage classified error", err)
|
||||
}
|
||||
if !errors.Is(err, os.ErrNotExist) {
|
||||
t.Fatalf("DeleteFile() error = %v, want os.ErrNotExist", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadStateClassifiesDecodeErrors(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
s := newTestStorage(t)
|
||||
if err := os.WriteFile(filepath.Join(s.storageRoot, stateFileName), []byte("{"), 0o644); err != nil {
|
||||
t.Fatalf("seed invalid state file: %v", err)
|
||||
}
|
||||
|
||||
_, err := s.LoadState()
|
||||
if err == nil {
|
||||
t.Fatal("LoadState() error = nil, want non-nil")
|
||||
}
|
||||
if !gerr.IsStorage(err) {
|
||||
t.Fatalf("LoadState() error = %v, want storage classified error", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestAtomicWriteFirstAndOverwrite(t *testing.T) {
|
||||
s := newTestStorage(t)
|
||||
target := filepath.Join("turns", "12.bin")
|
||||
|
||||
Reference in New Issue
Block a user