kvdb/test: add bolt test
This commit is contained in:
3 files changed
+130
-6
No files matched your search
@@ -0,0 +1,44 @@
|
||||
package kvdb
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
|
||||
"github.com/btcsuite/btcwallet/walletdb"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
type boltFixture struct {
|
||||
t *testing.T
|
||||
tempDir string
|
||||
}
|
||||
|
||||
func NewBoltFixture(t *testing.T) *boltFixture {
|
||||
tempDir, err := ioutil.TempDir("", "test")
|
||||
require.NoError(t, err)
|
||||
|
||||
return &boltFixture{
|
||||
t: t,
|
||||
tempDir: tempDir,
|
||||
}
|
||||
}
|
||||
|
||||
func (b *boltFixture) Cleanup() {
|
||||
os.RemoveAll(b.tempDir)
|
||||
}
|
||||
|
||||
func (b *boltFixture) NewBackend() walletdb.DB {
|
||||
dbPath := filepath.Join(b.tempDir)
|
||||
|
||||
db, err := GetBoltBackend(&BoltBackendConfig{
|
||||
DBPath: dbPath,
|
||||
DBFileName: "test.db",
|
||||
NoFreelistSync: true,
|
||||
DBTimeout: DefaultDBTimeout,
|
||||
})
|
||||
require.NoError(b.t, err)
|
||||
|
||||
return db
|
||||
}
|
||||
Reference in new issue
Block a user