package db import ( "database/sql" _ "modernc.org/sqlite" ) var conn *sql.DB func HandleConn(testing ...bool) *sql.DB { if len(testing) > 0 { conn, _ = sql.Open("sqlite", "file::memory:?cache=shared") buildSchema() return conn } if conn == nil { conn, _ = sql.Open("sqlite", "records.db") buildSchema() return conn } return conn } func buildSchema() error { c := HandleConn() _, err := c.Exec(` CREATE TABLE IF NOT EXISTS records ( UUID TEXT NOT NULL, Handle TEXT NOT NULL UNIQUE, URL TEXT NOT NULL, PRIMARY KEY (UUID) ); `) return err }