aboutsummaryrefslogtreecommitdiff
path: root/internal/mock
diff options
context:
space:
mode:
authorStefan Majewsky <majewsky@gmx.net>2026-04-17 14:53:52 +0200
committerStefan Majewsky <majewsky@gmx.net>2026-04-17 14:53:55 +0200
commit52f44287216b47149da9eb3f038408447f0e5981 (patch)
tree8b81794b83d11b26e6753f65d65641b34336995c /internal/mock
parente73aee05956d7917e7d76ab793d5e2291ace6416 (diff)
downloadgo-oblast-52f44287216b47149da9eb3f038408447f0e5981.tar.gz
improve test coverage, error reporting for Select()
Diffstat (limited to 'internal/mock')
-rw-r--r--internal/mock/mock.go12
1 files changed, 9 insertions, 3 deletions
diff --git a/internal/mock/mock.go b/internal/mock/mock.go
index d3358c4..ecbb03e 100644
--- a/internal/mock/mock.go
+++ b/internal/mock/mock.go
@@ -245,8 +245,9 @@ func (r result) RowsAffected() (int64, error) {
// Rows is a mock response for a Query() or QueryRow() call.
// It is constructed by [ResponseSet.ExpectQuery].
type Rows struct {
- columns []string
- results [][]any
+ columns []string
+ results [][]any
+ closeError error
}
// AndReturnColumns configures the set of column names that will be returend by this query.
@@ -272,6 +273,11 @@ func (r *Rows) WithRow(values ...any) *Rows {
return r
}
+// AndCloseFailsWith sets up Close() for this Rows to fail with the provided error message.
+func (r *Rows) AndCloseFailsWith(err error) {
+ r.closeError = err
+}
+
type rows struct {
r Rows
closed bool
@@ -285,7 +291,7 @@ func (r *rows) Columns() []string {
// Close implements the [driver.Rows] interface.
func (r *rows) Close() error {
r.closed = true
- return nil
+ return r.r.closeError
}
// Next implements the [driver.Rows] interface.