Exemple #1
0
// 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)
		}
	}
}
Exemple #2
0
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
}
Exemple #3
0
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
}