2
0

[]byte skips encoding/decoding

refs #104
This commit is contained in:
Jack Christensen
2015-11-12 14:54:25 -06:00
parent 26bb780063
commit e1215d9b19
5 changed files with 115 additions and 5 deletions
+25
View File
@@ -431,6 +431,7 @@ func TestQueryRowCoreByteSlice(t *testing.T) {
}{
{"select $1::text", "Jack", []byte("Jack")},
{"select $1::text", []byte("Jack"), []byte("Jack")},
{"select $1::int4", int32(239023409), []byte{14, 63, 53, 49}},
{"select $1::varchar", []byte("Jack"), []byte("Jack")},
{"select $1::bytea", []byte{0, 15, 255, 17}, []byte{0, 15, 255, 17}},
}
@@ -451,6 +452,30 @@ func TestQueryRowCoreByteSlice(t *testing.T) {
}
}
func TestQueryRowByteSliceArgument(t *testing.T) {
t.Parallel()
conn := mustConnect(t, *defaultConnConfig)
defer closeConn(t, conn)
sql := "select $1::int4"
queryArg := []byte{14, 63, 53, 49}
expected := int32(239023409)
var actual int32
err := conn.QueryRow(sql, queryArg).Scan(&actual)
if err != nil {
t.Errorf("Unexpected failure: %v (sql -> %v)", err, sql)
}
if expected != actual {
t.Errorf("Expected %v, got %v (sql -> %v)", expected, actual, sql)
}
ensureConnValid(t, conn)
}
func TestQueryRowUnknownType(t *testing.T) {
t.Parallel()