mirror of
https://github.com/coder/coder.git
synced 2025-07-08 11:39:50 +00:00
* chore: Initial database scaffolding This implements migrations and code generation for interfacing with a PostgreSQL database. A dependency is added for the "postgres" binary on the host, but that seems like an acceptable requirement considering it's our primary database. An in-memory database object can be created for simple cross-OS and fast testing. * Run tests in CI * Use Docker instead of binaries on the host * Skip database tests on non-Linux operating systems * chore: Add golangci-lint and codecov * Use consistent file names
33 lines
552 B
Go
33 lines
552 B
Go
//go:build linux
|
|
|
|
package postgres_test
|
|
|
|
import (
|
|
"database/sql"
|
|
"testing"
|
|
|
|
"github.com/coder/coder/database/postgres"
|
|
"github.com/stretchr/testify/require"
|
|
"go.uber.org/goleak"
|
|
|
|
_ "github.com/lib/pq"
|
|
)
|
|
|
|
func TestMain(m *testing.M) {
|
|
goleak.VerifyTestMain(m)
|
|
}
|
|
|
|
func TestPostgres(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
connect, close, err := postgres.Open()
|
|
require.NoError(t, err)
|
|
defer close()
|
|
db, err := sql.Open("postgres", connect)
|
|
require.NoError(t, err)
|
|
err = db.Ping()
|
|
require.NoError(t, err)
|
|
err = db.Close()
|
|
require.NoError(t, err)
|
|
}
|