// LoadSQLString execute all SQL statements from given string. SQL statements // must be separated by SQLSeparator. func LoadSQLString(t *testing.T, e pg.Execer, fixture string) { for _, query := range strings.Split(fixture, SQLSeparator) { query = strings.TrimSpace(query) if len(query) == 0 { continue } if _, err := e.Exec(query); err != nil { t.Fatalf("cannot load fixture: %s: %q", err, query) } } }
func DeleteNote(e pg.Execer, noteID int) error { res, err := e.Exec(` DELETE FROM notes WHERE note_id = $1 `, noteID) if err != nil { return pg.CastErr(err) } if n, _ := res.RowsAffected(); n != 1 { return pg.ErrNotFound } return nil }
func CreateAccount(e pg.Execer, id int, login, provider string) (*Account, error) { now := time.Now() _, err := e.Exec(` INSERT INTO accounts (account_id, login, created, provider) VALUES ($1, $2, $3, $4) `, id, login, now, provider) if err != nil { return nil, err } a := Account{ AccountID: id, Login: login, Created: now, Provider: provider, } return &a, nil }