1
0
Fork 0
mirror of https://git.sr.ht/~ashkeel/strimertul synced 2024-09-18 01:50:50 +00:00
strimertul/database/testing.go
2023-11-03 16:55:57 +01:00

36 lines
658 B
Go

package database
import (
"testing"
kv "github.com/strimertul/kilovolt/v11"
"go.uber.org/zap/zaptest"
)
func CreateInMemoryLocalClient(t *testing.T) (*LocalDBClient, kv.Driver) {
logger := zaptest.NewLogger(t)
// Create in-memory store and hub
inMemoryStore := kv.MakeBackend()
hub, err := kv.NewHub(inMemoryStore, kv.HubOptions{}, logger)
if err != nil {
t.Fatal(err)
}
go hub.Run()
// Create local client
client, err := NewLocalClient(hub, logger)
if err != nil {
t.Fatal(err)
}
return client, inMemoryStore
}
func CleanupLocalClient(client *LocalDBClient) {
if client.hub != nil {
_ = client.Close()
client.hub.Close()
}
}