28 lines
430 B
Go
28 lines
430 B
Go
package mdb
|
|
|
|
import (
|
|
"math/rand"
|
|
"os"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestMain(m *testing.M) {
|
|
rand.Seed(time.Now().UnixNano())
|
|
os.Exit(m.Run())
|
|
}
|
|
|
|
func testWithDB(t *testing.T, name string, inner func(t *testing.T, db *DB)) {
|
|
t.Run(name, func(t *testing.T) {
|
|
root, err := os.MkdirTemp("", "")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
defer os.RemoveAll(root)
|
|
|
|
db := OpenDB(root, true)
|
|
defer db.Close()
|
|
inner(t, db)
|
|
})
|
|
}
|