(dbSetting TestDBSetting)
| 103 | } |
| 104 | |
| 105 | func initTestDataSource(dbSetting TestDBSetting) error { |
| 106 | connection, imageCleanUp, err := initDatabaseImage(dbSetting) |
| 107 | if err != nil { |
| 108 | return err |
| 109 | } |
| 110 | dbSetting.Connection = connection |
| 111 | |
| 112 | dbEngine, err := initDatabase(dbSetting) |
| 113 | if err != nil { |
| 114 | return err |
| 115 | } |
| 116 | |
| 117 | newCache, err := initCache() |
| 118 | if err != nil { |
| 119 | return err |
| 120 | } |
| 121 | |
| 122 | newData, dbCleanUp, err := data.NewData(dbEngine, newCache) |
| 123 | if err != nil { |
| 124 | return err |
| 125 | } |
| 126 | testDataSource = newData |
| 127 | testCache = newCache |
| 128 | |
| 129 | tearDown = func() { |
| 130 | dbCleanUp() |
| 131 | log.Info("cleanup test database successfully") |
| 132 | imageCleanUp() |
| 133 | log.Info("cleanup test database image successfully") |
| 134 | } |
| 135 | return nil |
| 136 | } |
| 137 | |
| 138 | func initDatabaseImage(dbSetting TestDBSetting) (connection string, cleanup func(), err error) { |
| 139 | // sqlite3 don't need to set up image |
no test coverage detected