| 140 | } |
| 141 | |
| 142 | func (t *LoaderTest) TestLoaderError(c *C) { |
| 143 | tx, err := t.db.Begin() |
| 144 | c.Assert(err, IsNil) |
| 145 | defer tx.Rollback() |
| 146 | |
| 147 | loader := newErrLoader(errors.New("my error")) |
| 148 | _, err = tx.QueryOne(loader, "SELECT 1, 2") |
| 149 | c.Assert(err, Not(IsNil)) |
| 150 | c.Assert(err.Error(), Equals, "my error") |
| 151 | |
| 152 | // Verify that client is still functional. |
| 153 | var n1, n2 int |
| 154 | _, err = tx.QueryOne(pg.Scan(&n1, &n2), "SELECT 1, 2") |
| 155 | c.Assert(err, IsNil) |
| 156 | c.Assert(n1, Equals, 1) |
| 157 | c.Assert(n2, Equals, 2) |
| 158 | } |