20 lines
922 B
Go
20 lines
922 B
Go
package server
|
|
|
|
import "testing"
|
|
|
|
// Queries written for SQLite, as PostgreSQL takes them.
|
|
func TestPGRebind(t *testing.T) {
|
|
for _, c := range [][2]string{
|
|
{`SELECT a FROM t WHERE x = ? AND y = ?`, `SELECT a FROM t WHERE x = $1 AND y = $2`},
|
|
{`INSERT OR IGNORE INTO admin_agents(admin_id, agent_id) VALUES(?, ?)`, `INSERT INTO admin_agents(admin_id, agent_id) VALUES($1, $2) ON CONFLICT DO NOTHING`},
|
|
{`SELECT '?' , ?`, `SELECT '?' , $1`},
|
|
{"CREATE TABLE IF NOT EXISTS x (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n n INTEGER NOT NULL,\n b BLOB NOT NULL)",
|
|
"CREATE TABLE IF NOT EXISTS x (\n id BIGSERIAL PRIMARY KEY,\n n BIGINT NOT NULL,\n b BYTEA NOT NULL)"},
|
|
{`ALTER TABLE agents ADD COLUMN run_user TEXT NOT NULL DEFAULT ''`, `ALTER TABLE agents ADD COLUMN IF NOT EXISTS run_user TEXT NOT NULL DEFAULT ''`},
|
|
} {
|
|
if got := pgSQL(c[0]); got != c[1] {
|
|
t.Errorf("\n got %s\nwant %s", got, c[1])
|
|
}
|
|
}
|
|
}
|