diff options
author | Zac Medico <zmedico@gmail.com> | 2016-03-07 01:15:24 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gmail.com> | 2016-03-07 01:15:24 -0800 |
commit | 4f5821ada67fa024a5d417664e0d6c47a71c5c6c (patch) | |
tree | c2a0a88410b1d07c8ddf61b268772a0f6be3b766 | |
parent | Add SQLiteRows.DeclTypes() method (diff) | |
download | golite-4f5821ada67fa024a5d417664e0d6c47a71c5c6c.tar.gz golite-4f5821ada67fa024a5d417664e0d6c47a71c5c6c.tar.xz |
Test SQLiteRows.DeclTypes()
-rw-r--r-- | sqlite3_test.go | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/sqlite3_test.go b/sqlite3_test.go index 9efd313..c7996c6 100644 --- a/sqlite3_test.go +++ b/sqlite3_test.go @@ -1279,6 +1279,41 @@ func TestAggregatorRegistration(t *testing.T) { } } +func TestDeclTypes(t *testing.T) { + + d := SQLiteDriver{} + + conn, err := d.Open(":memory:") + if err != nil { + t.Fatal("Failed to begin transaction:", err) + } + defer conn.Close() + + sqlite3conn := conn.(*SQLiteConn) + + _, err = sqlite3conn.Exec("create table foo (id integer not null primary key, name text)", nil) + if err != nil { + t.Fatal("Failed to create table:", err) + } + + _, err = sqlite3conn.Exec("insert into foo(name) values(\"bar\")", nil) + if err != nil { + t.Fatal("Failed to insert:", err) + } + + rs, err := sqlite3conn.Query("select * from foo", nil) + if err != nil { + t.Fatal("Failed to select:", err) + } + defer rs.Close() + + declTypes := rs.(*SQLiteRows).DeclTypes() + + if !reflect.DeepEqual(declTypes, []string{"integer", "text"}) { + t.Fatal("Unexpected declTypes:", declTypes) + } +} + var customFunctionOnce sync.Once func BenchmarkCustomFunctions(b *testing.B) { |