1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
package node_test
import (
"os"
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"github.com/lxc/incus/v6/internal/server/db/node"
)
func TestOpen(t *testing.T) {
dir, cleanup := newDir(t)
defer cleanup()
db, err := node.Open(dir)
defer func() { _ = db.Close() }()
require.NoError(t, err)
}
// When the node-local database is created from scratch, the value for the
// initial patch is 0.
func TestEnsureSchema(t *testing.T) {
dir, cleanup := newDir(t)
defer cleanup()
db, err := node.Open(dir)
require.NoError(t, err)
defer func() { _ = db.Close() }()
initial, err := node.EnsureSchema(db, dir)
require.NoError(t, err)
assert.Equal(t, 0, initial)
}
// Create a new temporary directory, along with a function to clean it up.
func newDir(t *testing.T) (string, func()) {
dir, err := os.MkdirTemp("", "incus-db-node-test-")
require.NoError(t, err)
cleanup := func() {
require.NoError(t, os.RemoveAll(dir))
}
return dir, cleanup
}
|