wip
This commit is contained in:
36
pgutil/errors_test.go
Normal file
36
pgutil/errors_test.go
Normal file
@@ -0,0 +1,36 @@
|
||||
package pgutil
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestErrors(t *testing.T) {
|
||||
db, err := sql.Open(
|
||||
"postgres",
|
||||
"host=127.0.0.1 dbname=test sslmode=disable user=test password=test")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := DropAllTables(db); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := Migrate(db, testMigrationFS); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
_, err = db.Exec(`INSERT INTO users(UserID, Email) VALUES (2, 'q@r.com')`)
|
||||
if !ErrIsDuplicateKey(err) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
_, err = db.Exec(`INSERT INTO users(UserID, Email) VALUES (3, 'c@d.com')`)
|
||||
if !ErrIsDuplicateKey(err) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
_, err = db.Exec(`INSERT INTO user_notes(UserID, NoteID, Note) VALUES (4, 1, 'hello')`)
|
||||
if !ErrIsForeignKey(err) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user