github.com/lovung/GoCleanArchitecture@v0.0.0-20210302152432-50d91fd29f9f/pkg/testhelper/gorm.go (about) 1 package testhelper 2 3 import ( 4 "github.com/DATA-DOG/go-sqlmock" 5 "gorm.io/driver/mysql" 6 "gorm.io/gorm" 7 ) 8 9 // OpenDBConnection create mock for gorm 10 func OpenDBConnection() (*gorm.DB, sqlmock.Sqlmock, error) { 11 db, mock, err := sqlmock.New() 12 if err != nil { 13 return nil, nil, err 14 } 15 16 gormDB, err := gorm.Open(mysql.New(mysql.Config{ 17 Conn: db, 18 SkipInitializeWithVersion: true, 19 }), &gorm.Config{}) 20 21 if err != nil { 22 return nil, nil, err 23 } 24 25 return gormDB, mock, nil 26 }