Skip to content

Commit

Permalink
Add reflection support for smallint
Browse files Browse the repository at this point in the history
  • Loading branch information
Sarah Brown committed Jul 14, 2016
1 parent 9924437 commit 072239f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
9 changes: 7 additions & 2 deletions cassandra_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -651,6 +651,7 @@ func TestSliceMap(t *testing.T) {
testfloat float,
testdouble double,
testint int,
testsmallint smallint,
testdecimal decimal,
testlist list<text>,
testset set<int>,
Expand All @@ -676,15 +677,16 @@ func TestSliceMap(t *testing.T) {
m["testfloat"] = float32(4.564)
m["testdouble"] = float64(4.815162342)
m["testint"] = 2343
m["testsmallint"] = int16(2)
m["testdecimal"] = inf.NewDec(100, 0)
m["testlist"] = []string{"quux", "foo", "bar", "baz", "quux"}
m["testset"] = []int{1, 2, 3, 4, 5, 6, 7, 8, 9}
m["testmap"] = map[string]string{"field1": "val1", "field2": "val2", "field3": "val3"}
m["testvarint"] = bigInt
m["testinet"] = "213.212.2.19"
sliceMap := []map[string]interface{}{m}
if err := session.Query(`INSERT INTO slice_map_table (testuuid, testtimestamp, testvarchar, testbigint, testblob, testbool, testfloat, testdouble, testint, testdecimal, testlist, testset, testmap, testvarint, testinet) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
m["testuuid"], m["testtimestamp"], m["testvarchar"], m["testbigint"], m["testblob"], m["testbool"], m["testfloat"], m["testdouble"], m["testint"], m["testdecimal"], m["testlist"], m["testset"], m["testmap"], m["testvarint"], m["testinet"]).Exec(); err != nil {
if err := session.Query(`INSERT INTO slice_map_table (testuuid, testtimestamp, testvarchar, testbigint, testblob, testbool, testfloat, testdouble, testint, testsmallint, testdecimal, testlist, testset, testmap, testvarint, testinet) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
m["testuuid"], m["testtimestamp"], m["testvarchar"], m["testbigint"], m["testblob"], m["testbool"], m["testfloat"], m["testdouble"], m["testint"], m["testsmallint"], m["testdecimal"], m["testlist"], m["testset"], m["testmap"], m["testvarint"], m["testinet"]).Exec(); err != nil {
t.Fatal("insert:", err)
}
if returned, retErr := session.Query(`SELECT * FROM slice_map_table`).Iter().SliceMap(); retErr != nil {
Expand Down Expand Up @@ -759,6 +761,9 @@ func matchSliceMap(t *testing.T, sliceMap []map[string]interface{}, testMap map[
if sliceMap[0]["testint"] != testMap["testint"] {
t.Fatal("returned testint did not match")
}
if sliceMap[0]["testsmallint"] != testMap["testsmallint"] {
t.Fatal("returned testsmallint did not match")
}
}

func TestScanWithNilArguments(t *testing.T) {
Expand Down
2 changes: 2 additions & 0 deletions helpers.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ func goType(t TypeInfo) reflect.Type {
return reflect.TypeOf(*new(float64))
case TypeInt:
return reflect.TypeOf(*new(int))
case TypeSmallInt:
return reflect.TypeOf(*new(int16))
case TypeDecimal:
return reflect.TypeOf(*new(*inf.Dec))
case TypeUUID, TypeTimeUUID:
Expand Down

0 comments on commit 072239f

Please sign in to comment.