package xorm import ( _ "github.com/go-sql-driver/mysql" "testing" ) /* CREATE DATABASE IF NOT EXISTS xorm_test CHARACTER SET utf8 COLLATE utf8_general_ci; */ var mysqlShowTestSql bool = true func TestMysql(t *testing.T) { err := mysqlDdlImport() if err != nil { t.Error(err) return } engine, err := NewEngine("mysql", "root:@/xorm_test?charset=utf8") defer engine.Close() if err != nil { t.Error(err) return } engine.ShowSQL = mysqlShowTestSql engine.ShowErr = mysqlShowTestSql engine.ShowWarn = mysqlShowTestSql engine.ShowDebug = mysqlShowTestSql testAll(engine, t) testAll2(engine, t) testAll3(engine, t) } func TestMysqlWithCache(t *testing.T) { err := mysqlDdlImport() if err != nil { t.Error(err) return } engine, err := NewEngine("mysql", "root:@/xorm_test2?charset=utf8") defer engine.Close() if err != nil { t.Error(err) return } engine.SetDefaultCacher(NewLRUCacher(NewMemoryStore(), 1000)) engine.ShowSQL = mysqlShowTestSql engine.ShowErr = mysqlShowTestSql engine.ShowWarn = mysqlShowTestSql engine.ShowDebug = mysqlShowTestSql testAll(engine, t) testAll2(engine, t) } 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) }