package mysqlite import ( "fmt" "github.com/stretchr/testify/require" "testing" ) func openEmptyTestDb(t *testing.T) *Db { db, err := OpenDb(":memory:") require.NoError(t, err, "error opening db") require.NotNil(t, db, "db was nil") return db } func TestDb_Begin(t *testing.T) { db := openEmptyTestDb(t) err := db.Close() require.NoError(t, err, "error closing db") } func TestDb_GetUserVersion(t *testing.T) { db := openEmptyTestDb(t) defer db.MustClose() userVersion := -1 err := db.Query("pragma user_version").ScanSingle(&userVersion) require.NoError(t, err) require.Equal(t, 0, userVersion) } func TestDb_SetUserVersion(t *testing.T) { db := openEmptyTestDb(t) defer db.MustClose() err := db.Query(fmt.Sprintf("pragma user_version = %d", 123)).Exec() require.NoError(t, err) userVersion := -1 err = db.Query("pragma user_version").ScanSingle(&userVersion) require.NoError(t, err) require.Equal(t, 123, userVersion) }