gorqlite/write_test.go

109 lines
2.4 KiB
Go
Raw Normal View History

2016-09-01 16:47:49 +00:00
package gorqlite
import "testing"
2017-07-15 20:50:10 +00:00
2016-09-01 16:47:49 +00:00
// import "os"
2017-07-15 20:50:10 +00:00
func TestWriteOne(t *testing.T) {
2016-09-01 16:47:49 +00:00
var wr WriteResult
var err error
t.Logf("trying Open")
conn, err := Open(testUrl())
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FATAL")
2017-07-15 20:50:10 +00:00
t.Fatal(err)
2016-09-01 16:47:49 +00:00
}
t.Logf("trying WriteOne DROP")
wr, err = conn.WriteOne("DROP TABLE IF EXISTS " + testTableName() + "")
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
t.Logf("trying WriteOne CTHULHU (should fail, bad SQL)")
wr, err = conn.WriteOne("CTHULHU")
2017-07-15 20:50:10 +00:00
if err == nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
t.Logf("trying WriteOne CREATE")
wr, err = conn.WriteOne("CREATE TABLE " + testTableName() + " (id integer, name text)")
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
t.Logf("trying WriteOne INSERT")
wr, err = conn.WriteOne("INSERT INTO " + testTableName() + " (id, name) VALUES ( 1, 'aaa bbb ccc' )")
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
t.Logf("checking WriteOne RowsAffected")
2017-07-15 20:50:10 +00:00
if wr.RowsAffected != 1 {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
t.Logf("trying WriteOne DROP")
wr, err = conn.WriteOne("DROP TABLE IF EXISTS " + testTableName() + "")
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
2017-07-15 20:50:10 +00:00
2016-09-01 16:47:49 +00:00
}
2017-07-15 20:50:10 +00:00
func TestWrite(t *testing.T) {
2016-09-01 16:47:49 +00:00
var results []WriteResult
var err error
var s []string
t.Logf("trying Open")
conn, err := Open(testUrl())
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FATAL")
2017-07-15 20:50:10 +00:00
t.Fatal(err)
2016-09-01 16:47:49 +00:00
}
t.Logf("trying Write DROP & CREATE")
2017-07-15 20:50:10 +00:00
s = make([]string, 0)
s = append(s, "DROP TABLE IF EXISTS "+testTableName()+"")
s = append(s, "CREATE TABLE "+testTableName()+" (id integer, name text)")
2016-09-01 16:47:49 +00:00
results, err = conn.Write(s)
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
t.Logf("trying Write INSERT")
2017-07-15 20:50:10 +00:00
s = make([]string, 0)
s = append(s, "INSERT INTO "+testTableName()+" (id, name) VALUES ( 1, 'aaa bbb ccc' )")
s = append(s, "INSERT INTO "+testTableName()+" (id, name) VALUES ( 2, 'ddd eee fff' )")
s = append(s, "INSERT INTO "+testTableName()+" (id, name) VALUES ( 3, 'ggg hhh iii' )")
s = append(s, "INSERT INTO "+testTableName()+" (id, name) VALUES ( 4, 'jjj kkk lll' )")
2016-09-01 16:47:49 +00:00
results, err = conn.Write(s)
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
2017-07-15 20:50:10 +00:00
if len(results) != 4 {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
2017-07-15 20:50:10 +00:00
2016-09-01 16:47:49 +00:00
t.Logf("trying Write DROP")
2017-07-15 20:50:10 +00:00
s = make([]string, 0)
s = append(s, "DROP TABLE IF EXISTS "+testTableName()+"")
2016-09-01 16:47:49 +00:00
results, err = conn.Write(s)
2017-07-15 20:50:10 +00:00
if err != nil {
2016-09-01 16:47:49 +00:00
t.Logf("--> FAILED")
t.Fail()
}
2017-07-15 20:50:10 +00:00
}