kenn-io--agentsview
f99010fae1
CI / lint (push) Failing after 1s
CI / frontend (push) Failing after 1s
CI / scripts (push) Failing after 1s
CI / Go Test (ubuntu-latest) (push) Failing after 0s
CI / frontend-node-25 (push) Failing after 1s
CI / docs (push) Failing after 0s
CI / coverage (push) Failing after 0s
CI / e2e (push) Failing after 0s
Docker / build-and-push (push) Failing after 1s
CI / integration (push) Failing after 4m43s
CI / Go Test (windows-latest) (push) Has been cancelled
CI / Desktop Unit Tests (Windows) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Linux (arm64)) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Linux) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Windows) (push) Has been cancelled
Desktop Artifacts (macOS) / Desktop Build (macOS (aarch64)) (push) Has been cancelled
Desktop Artifacts (macOS) / Desktop Build (macOS (x86_64)) (push) Has been cancelled
67 行
1.5 KiB
Go
67 行
1.5 KiB
Go
//go:build !(windows && arm64)
|
|
|
|
package duckdb
|
|
|
|
import (
|
|
"context"
|
|
"database/sql"
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
const duckDBGoModuleVersion = "v2.10504.0"
|
|
|
|
func TestLocalFileSmoke(t *testing.T) {
|
|
path := filepath.Join(t.TempDir(), "agentsview.duckdb")
|
|
|
|
db, err := sql.Open("duckdb", path)
|
|
require.NoError(t, err, "open DuckDB file")
|
|
t.Cleanup(func() {
|
|
require.NoError(t, db.Close(), "close DuckDB file")
|
|
})
|
|
|
|
ctx := context.Background()
|
|
require.NoError(t, db.PingContext(ctx), "ping DuckDB")
|
|
|
|
var version string
|
|
require.NoError(t,
|
|
db.QueryRowContext(ctx, "SELECT version()").Scan(&version),
|
|
"query DuckDB version",
|
|
)
|
|
t.Logf("duckdb version: %s; duckdb-go version: %s",
|
|
version, duckDBGoModuleVersion)
|
|
assert.NotEmpty(t, version)
|
|
|
|
_, err = db.ExecContext(ctx,
|
|
`CREATE TABLE sessions (id TEXT PRIMARY KEY, message_count INTEGER)`,
|
|
)
|
|
require.NoError(t, err, "create table")
|
|
|
|
_, err = db.ExecContext(ctx,
|
|
`INSERT INTO sessions VALUES (?, ?)`,
|
|
"duckdb-local", 3,
|
|
)
|
|
require.NoError(t, err, "insert row")
|
|
|
|
require.NoError(t, db.Close(), "close first connection")
|
|
|
|
reopened, err := sql.Open("duckdb", path)
|
|
require.NoError(t, err, "reopen DuckDB file")
|
|
t.Cleanup(func() {
|
|
require.NoError(t, reopened.Close(), "close reopened DuckDB file")
|
|
})
|
|
|
|
var count int
|
|
require.NoError(t,
|
|
reopened.QueryRowContext(ctx,
|
|
`SELECT message_count FROM sessions WHERE id = ?`,
|
|
"duckdb-local",
|
|
).Scan(&count),
|
|
"query persisted row",
|
|
)
|
|
assert.Equal(t, 3, count)
|
|
}
|