pgx/data_row_reader_test.go.erb
2013-05-03 13:51:10 -05:00

64 lines
1.2 KiB
Plaintext

package pgx
import (
"testing"
)
func TestDataRowReaderReadString(t *testing.T) {
conn := getSharedConnection()
var s string
onDataRow := func(r *DataRowReader) error {
s = r.ReadString()
return nil
}
err := conn.SelectFunc("select 'Jack'", onDataRow)
if err != nil {
t.Fatal("Select failed: " + err.Error())
}
if s != "Jack" {
t.Error("Wrong value returned")
}
}
<% [64, 32, 16].each do |size| %>
func TestDataRowReaderReadInt<%= size %>(t *testing.T) {
conn := getSharedConnection()
var n int<%= size %>
onDataRow := func(r *DataRowReader) error {
n = r.ReadInt<%= size %>()
return nil
}
err := conn.SelectFunc("select 1", onDataRow)
if err != nil {
t.Fatal("Select failed: " + err.Error())
}
if n != 1 {
t.Error("Wrong value returned")
}
}
<% end %>
<% [64, 32].each do |size| %>
func TestDataRowReaderReadFloat<%= size %>(t *testing.T) {
conn := getSharedConnection()
var n float<%= size %>
onDataRow := func(r *DataRowReader) error {
n = r.ReadFloat<%= size %>()
return nil
}
err := conn.SelectFunc("select 1.5", onDataRow)
if err != nil {
t.Fatal("Select failed: " + err.Error())
}
if n != 1.5 {
t.Error("Wrong value returned")
}
}
<% end %>