-
Notifications
You must be signed in to change notification settings - Fork 282
/
docs.go
25 lines (25 loc) · 1.11 KB
/
docs.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Package dbtest provides a way to create a clean database for tests using
// template databases. For it to function properly a postgres database server
// must be running with the expected templates. This is typically done using
// the docker image provided in the docker directory of this package.
//
// To use this package in a test add something like the following in the
// beginning of the test:
//
// c, u, _, err := dbtest.StartUsingTemplate(dbtest.Postgres)
// require.NoError(t, err)
// t.Cleanup(func() {
// require.NoError(t, c())
// })
// // use u to get a connection to the new database
// dBase, err := common.SqlOpen("postgres", u)
//
// By default this uses a template that already has all of the boundary
// migrations run. If a test needs a database without any migrations, like in
// the case where the migration code needs to be tested, a different template
// can be specified. This should generally be template1:
//
// c, u, _, err := dbtest.StartUsingTemplate(dbtest.Postgres, dbtest.WithTemplate(dbtest.Template1))
//
// See https://www.postgresql.org/docs/13/manage-ag-templatedbs.html
package dbtest