Skip to content

Commit 1dd355d

Browse files
author
Kyril Revels
committed
support for usage of sql.Out as a param value
1 parent ef0bdf2 commit 1dd355d

File tree

4 files changed

+32
-5
lines changed

4 files changed

+32
-5
lines changed

go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
module github.com/DATA-DOG/go-sqlmock
2+
3+
go 1.12

sqlmock_go18.go

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,3 @@ func (stmt *statement) QueryContext(ctx context.Context, args []driver.NamedValu
114114

115115
// @TODO maybe add ExpectedBegin.WithOptions(driver.TxOptions)
116116

117-
// CheckNamedValue meets https://golang.org/pkg/database/sql/driver/#NamedValueChecker
118-
func (c *sqlmock) CheckNamedValue(nv *driver.NamedValue) (err error) {
119-
nv.Value, err = c.converter.ConvertValue(nv.Value)
120-
return err
121-
}

sqlmock_go18_19.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// +build go1.8,!go1.9
2+
3+
package sqlmock
4+
5+
import "database/sql/driver"
6+
7+
// CheckNamedValue meets https://golang.org/pkg/database/sql/driver/#NamedValueChecker
8+
func (c *sqlmock) CheckNamedValue(nv *driver.NamedValue) (err error) {
9+
nv.Value, err = c.converter.ConvertValue(nv.Value)
10+
return err
11+
}

sqlmock_go19.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// +build go1.9
2+
3+
package sqlmock
4+
5+
import (
6+
"database/sql"
7+
"database/sql/driver"
8+
)
9+
10+
// CheckNamedValue meets https://golang.org/pkg/database/sql/driver/#NamedValueChecker
11+
func (c *sqlmock) CheckNamedValue(nv *driver.NamedValue) (err error) {
12+
switch nv.Value.(type) {
13+
case sql.Out:
14+
return nil
15+
default:
16+
nv.Value, err = c.converter.ConvertValue(nv.Value)
17+
return err
18+
}
19+
}

0 commit comments

Comments
 (0)