Merge 4698547f141637928d51f0a5fa118b7b13876d03 into bab148f90cf31dcd8e8f78e8327c6dc13b4e61af

This commit is contained in:
Can Yucel 2014-06-09 00:22:48 +00:00
commit d1ed7042b7

View File

@ -151,13 +151,15 @@ type Details struct {
}
var (
db gorm.DB
t1, t2, t3, t4, t5 time.Time
db gorm.DB
t1, t2, t3, t4, t5 time.Time
supportLastInsertId bool
)
func init() {
var err error
switch os.Getenv("GORM_DIALECT") {
env := os.Getenv("GORM_DIALECT")
switch env {
case "mysql":
// CREATE USER 'gorm'@'localhost' IDENTIFIED BY 'gorm';
// CREATE DATABASE gorm;
@ -168,10 +170,14 @@ func init() {
fmt.Println("testing postgres...")
db, err = gorm.Open("postgres", "user=gorm dbname=gorm sslmode=disable")
default:
env = "sqlite3"
fmt.Println("testing sqlite3...")
db, err = gorm.Open("sqlite3", "/tmp/gorm.db")
}
dialect := gorm.NewDialect(env)
supportLastInsertId = dialect.SupportLastInsertId()
// db.SetLogger(Logger{log.New(os.Stdout, "\r\n", 0)})
// db.SetLogger(log.New(os.Stdout, "\r\n", 0))
db.LogMode(true)
@ -338,7 +344,7 @@ func TestCreateAndUpdate(t *testing.T) {
t.Error("User should be new record")
}
if count := db.Save(&user).RowsAffected; count != 1 {
if count := db.Save(&user).RowsAffected; supportLastInsertId && count != 1 {
t.Error("There should be one record be affected when create record")
}
@ -356,7 +362,7 @@ func TestCreateAndUpdate(t *testing.T) {
t.Errorf("User's Password should be saved")
}
if count := db.Save(&User{Name: name2, Age: 1}).RowsAffected; count != 1 {
if count := db.Save(&User{Name: name2, Age: 1}).RowsAffected; supportLastInsertId && count != 1 {
t.Error("There should be one record be affected when update a record")
}