feat: storage sync/async funcs

This commit is contained in:
Ilia Denisov
2026-03-14 21:57:25 +02:00
parent 70a43237ca
commit 2134386625
3 changed files with 45 additions and 6 deletions
+33
View File
@@ -22,6 +22,39 @@ type callbackResult[T any] struct {
err error
}
func TestStateRoundTrip(t *testing.T) {
s := newTestStorage(t)
want := sampleState()
exists, err := s.StateExists()
if err != nil {
t.Fatalf("state exists before save: %v", err)
}
if exists {
t.Fatal("state file should not exist before save")
}
if err := s.SaveState(want); err != nil {
t.Fatalf("save state: %v", err)
}
exists, err = s.StateExists()
if err != nil {
t.Fatalf("state exists after save: %v", err)
}
if !exists {
t.Fatal("state file should exist after save")
}
got, err := s.LoadState()
if err != nil {
t.Fatalf("load state: %v", err)
}
if !reflect.DeepEqual(got, want) {
t.Fatalf("loaded state mismatch\nwant: %#v\ngot: %#v", want, got)
}
}
func TestStateRoundTripAsync(t *testing.T) {
s := newTestStorage(t)
want := sampleState()