xorm/mysql_test.go

98 lines
2.0 KiB
Go
Raw Normal View History

2013-06-08 04:41:51 +00:00
package xorm
import (
_ "github.com/go-sql-driver/mysql"
"testing"
)
2013-06-21 04:39:01 +00:00
/*
2013-07-15 15:45:04 +00:00
CREATE DATABASE IF NOT EXISTS xorm_test CHARACTER SET
2013-06-21 04:39:01 +00:00
utf8 COLLATE utf8_general_ci;
*/
2013-12-06 03:09:34 +00:00
var mysqlShowTestSql bool = true
2013-06-08 04:41:51 +00:00
func TestMysql(t *testing.T) {
2013-12-06 03:09:34 +00:00
err := mysqlDdlImport()
if err != nil {
t.Error(err)
return
}
2013-07-15 15:45:04 +00:00
engine, err := NewEngine("mysql", "root:@/xorm_test?charset=utf8")
defer engine.Close()
2013-07-15 15:45:04 +00:00
if err != nil {
t.Error(err)
return
}
2013-12-06 03:09:34 +00:00
engine.ShowSQL = mysqlShowTestSql
engine.ShowErr = mysqlShowTestSql
engine.ShowWarn = mysqlShowTestSql
engine.ShowDebug = mysqlShowTestSql
2013-06-08 04:41:51 +00:00
testAll(engine, t)
2013-09-26 07:19:39 +00:00
testAll2(engine, t)
testAll3(engine, t)
2013-06-08 04:41:51 +00:00
}
func TestMysqlWithCache(t *testing.T) {
2013-12-06 03:09:34 +00:00
err := mysqlDdlImport()
if err != nil {
t.Error(err)
return
}
2013-11-16 16:52:43 +00:00
engine, err := NewEngine("mysql", "root:@/xorm_test2?charset=utf8")
defer engine.Close()
if err != nil {
t.Error(err)
return
}
engine.SetDefaultCacher(NewLRUCacher(NewMemoryStore(), 1000))
2013-12-06 03:09:34 +00:00
engine.ShowSQL = mysqlShowTestSql
engine.ShowErr = mysqlShowTestSql
engine.ShowWarn = mysqlShowTestSql
engine.ShowDebug = mysqlShowTestSql
testAll(engine, t)
testAll2(engine, t)
}
2013-12-06 03:09:34 +00:00
func mysqlDdlImport() error {
engine, err := NewEngine("mysql", "root:@/?charset=utf8")
if err != nil {
return err
}
engine.ShowSQL = mysqlShowTestSql
engine.ShowErr = mysqlShowTestSql
engine.ShowWarn = mysqlShowTestSql
engine.ShowDebug = mysqlShowTestSql
sqlResults, _ := engine.Import("tests/mysql_ddl.sql")
engine.LogDebug("sql results: %v", sqlResults)
engine.Close()
return nil
}
func BenchmarkMysqlNoCache(t *testing.B) {
engine, err := NewEngine("mysql", "root:@/xorm_test?charset=utf8")
defer engine.Close()
if err != nil {
t.Error(err)
return
}
//engine.ShowSQL = true
doBenchCacheFind(engine, t)
}
func BenchmarkMysqlCache(t *testing.B) {
engine, err := NewEngine("mysql", "root:@/xorm_test?charset=utf8")
defer engine.Close()
if err != nil {
t.Error(err)
return
}
engine.SetDefaultCacher(NewLRUCacher(NewMemoryStore(), 1000))
doBenchCacheFind(engine, t)
}