package session import ( "bytes" "context" "testing" "github.com/stretchr/testify/require" ) func testStorage(storage Storage) func(t *testing.T) { ctx := context.Background() loader := Loader{ Storage: storage, } return func(t *testing.T) { a := require.New(t) _, err := loader.Load(ctx) a.ErrorIs(err, ErrNotFound) data := &Data{ Config: Config{}, DC: 2, Addr: "localhost:8080", AuthKey: bytes.Repeat([]byte{'a'}, 256), AuthKeyID: []byte("gotd1337"), Salt: 10, } a.NoError(loader.Save(ctx, data)) gotData, err := loader.Load(ctx) a.NoError(err) require.Equal(t, data, gotData) } }