Test fixes for multiple cdrc, CheckVersion taking now db as input, InitDataDb saving also version

This commit is contained in:
DanB
2016-06-01 18:42:45 +02:00
committed by Razvan Crainea
parent 0f380ec2bc
commit dd94117e5d
5 changed files with 22 additions and 19 deletions

View File

@@ -1274,7 +1274,7 @@ func TestApierLoadTariffPlanFromFolder(t *testing.T) {
} else if reply != "OK" {
t.Error("Calling ApierV1.LoadTariffPlanFromFolder got reply: ", reply)
}
time.Sleep(time.Duration(2**waitRater) * time.Millisecond)
time.Sleep(time.Duration(3**waitRater) * time.Millisecond)
}
func TestApierResetDataAfterLoadFromFolder(t *testing.T) {

View File

@@ -508,7 +508,7 @@ func main() {
}
defer accountDb.Close()
engine.SetAccountingStorage(accountDb)
if err := engine.CheckVersion(); err != nil {
if err := engine.CheckVersion(nil); err != nil {
fmt.Println(err.Error())
return
}

View File

@@ -48,6 +48,7 @@ func InitDataDb(cfg *config.CGRConfig) error {
}
}
ratingDb.CacheRatingAll()
CheckVersion(accountDb) // Write version before starting
return nil
}

View File

@@ -7,13 +7,16 @@ import (
"github.com/cgrates/cgrates/utils"
)
func CheckVersion() error {
func CheckVersion(acntDB AccountingStorage) error {
// get current db version
dbVersion, err := accountingStorage.GetStructVersion()
if acntDB == nil {
acntDB = accountingStorage
}
dbVersion, err := acntDB.GetStructVersion()
if err != nil {
if lhList, err := accountingStorage.GetLoadHistory(1, true); err != nil || len(lhList) == 0 {
if lhList, err := acntDB.GetLoadHistory(1, true); err != nil || len(lhList) == 0 {
// no data, write version
if err := accountingStorage.SetStructVersion(CurrentVersion); err != nil {
if err := acntDB.SetStructVersion(CurrentVersion); err != nil {
utils.Logger.Warning(fmt.Sprintf("Could not write current version to db: %v", err))
}
} else {

View File

@@ -77,23 +77,22 @@ func TestMCDRCLoadConfig(t *testing.T) {
}
}
// Remove data in both rating and accounting db
func TestMCDRCResetDataDb(t *testing.T) {
if !*testLocal {
return
}
if err := engine.InitDataDb(cfg); err != nil {
t.Fatal(err)
}
}
func TestMCDRCEmptyTables(t *testing.T) {
if !*testLocal {
return
}
if *storDbType != utils.MYSQL {
t.Fatal("Unsupported storDbType")
}
mysql, err := engine.NewMySQLStorage(cfg.StorDBHost, cfg.StorDBPort, cfg.StorDBName, cfg.StorDBUser, cfg.StorDBPass, cfg.StorDBMaxOpenConns, cfg.StorDBMaxIdleConns)
if err != nil {
t.Fatal("Error on opening database connection: ", err)
}
if err := mysql.CreateTablesFromScript(path.Join(*dataDir, "storage", *storDbType, utils.CREATE_CDRS_TABLES_SQL)); err != nil {
t.Fatal("Error on mysql creation: ", err.Error())
return // No point in going further
}
if _, err := mysql.Db.Query(fmt.Sprintf("SELECT 1 from %s", utils.TBL_CDRS)); err != nil {
t.Fatal(err.Error())
if err := engine.InitStorDb(cfg); err != nil {
t.Fatal(err)
}
}