From 90c9835c1e5613b8c1248ca7945d1018d83a475d Mon Sep 17 00:00:00 2001 From: TeoV Date: Tue, 8 May 2018 05:03:46 -0400 Subject: [PATCH] Add version check for sessions_cost and cdrs test in migrator --- migrator/cdrs.go | 4 ++-- migrator/cdrs_it_test.go | 15 ++++++++++++--- migrator/sessions_costs.go | 8 ++++---- migrator/sessions_costs_it_test.go | 18 +++++++++++++----- 4 files changed, 31 insertions(+), 14 deletions(-) diff --git a/migrator/cdrs.go b/migrator/cdrs.go index 86e0b68af..a23bd5778 100755 --- a/migrator/cdrs.go +++ b/migrator/cdrs.go @@ -130,7 +130,7 @@ type v1Cdrs struct { CostDetails *engine.CallCost // Attach the cost details to CDR when possible } -func (v1Cdr v1Cdrs) V1toV2Cdr() (cdr *engine.CDR) { +func (v1Cdr *v1Cdrs) V1toV2Cdr() (cdr *engine.CDR) { cdr = &engine.CDR{ CGRID: v1Cdr.CGRID, RunID: v1Cdr.RunID, @@ -198,7 +198,7 @@ func NewV1CDRFromCDRSql(cdrSql *engine.CDRsql) (cdr *v1Cdrs, err error) { return } -func (cdr v1Cdrs) AsCDRsql() (cdrSql *engine.CDRsql) { +func (cdr *v1Cdrs) AsCDRsql() (cdrSql *engine.CDRsql) { cdrSql = new(engine.CDRsql) cdrSql.Cgrid = cdr.CGRID cdrSql.RunID = cdr.RunID diff --git a/migrator/cdrs_it_test.go b/migrator/cdrs_it_test.go index d98382c1e..9abd979d1 100755 --- a/migrator/cdrs_it_test.go +++ b/migrator/cdrs_it_test.go @@ -192,14 +192,18 @@ func testCdrITMigrateAndMove(t *testing.T) { t.Error(err) } currentVersion := engine.Versions{ - utils.COST_DETAILS: 2, - utils.SessionSCosts: 3, - utils.CDRs: 1, + utils.COST_DETAILS: 2, + utils.CDRs: 1, } err = cdrMigrator.storDBOut.SetVersions(currentVersion, false) if err != nil { t.Error("Error when setting version for CDRs ", err.Error()) } + if vrs, err := cdrMigrator.storDBOut.GetVersions(""); err != nil { + t.Error(err) + } else if vrs[utils.CDRs] != 1 { + t.Errorf("Unexpected version returned: %d", vrs[utils.CDRs]) + } err, _ = cdrMigrator.Migrate([]string{utils.MetaCDRs}) if err != nil { t.Error("Error when migrating CDRs ", err.Error()) @@ -209,4 +213,9 @@ func testCdrITMigrateAndMove(t *testing.T) { } else if len(rcvCDRs) != 1 { t.Errorf("Unexpected number of CDRs returned: %d", len(rcvCDRs)) } + if vrs, err := cdrMigrator.storDBOut.GetVersions(""); err != nil { + t.Error(err) + } else if vrs[utils.CDRs] != 2 { + t.Errorf("Unexpected version returned: %d", vrs[utils.CDRs]) + } } diff --git a/migrator/sessions_costs.go b/migrator/sessions_costs.go index 0924c1463..b09850b80 100644 --- a/migrator/sessions_costs.go +++ b/migrator/sessions_costs.go @@ -87,7 +87,7 @@ func (m *Migrator) migrateSessionSCosts() (err error) { return err } fallthrough // incremental updates - case 2: // Simply removing them should be enough since if the system is offline they are most probably stale already + case 2: if err := m.migrateV2SessionSCosts(); err != nil { return err } @@ -124,7 +124,7 @@ func (m *Migrator) migrateV2SessionSCosts() (err error) { } if m.dryRun != true { // All done, update version wtih current one - vrs := engine.Versions{utils.CDRs: engine.CurrentStorDBVersions()[utils.SessionSCosts]} + vrs := engine.Versions{utils.SessionSCosts: engine.CurrentStorDBVersions()[utils.SessionSCosts]} if err = m.storDBOut.SetVersions(vrs, false); err != nil { return utils.NewCGRError(utils.Migrator, utils.ServerErrorCaps, @@ -145,7 +145,7 @@ type v2SessionsCost struct { CostDetails *engine.CallCost } -func (v2Cost v2SessionsCost) V2toV3Cost() (cost *engine.SMCost) { +func (v2Cost *v2SessionsCost) V2toV3Cost() (cost *engine.SMCost) { cost = &engine.SMCost{ CGRID: v2Cost.CGRID, RunID: v2Cost.RunID, @@ -173,7 +173,7 @@ func NewV2SessionsCostFromSessionsCostSql(smSql *engine.SessionsCostsSQL) (smV2 return } -func (v2Cost v2SessionsCost) AsSessionsCostSql() (smSql *engine.SessionsCostsSQL) { +func (v2Cost *v2SessionsCost) AsSessionsCostSql() (smSql *engine.SessionsCostsSQL) { smSql = new(engine.SessionsCostsSQL) smSql.Cgrid = v2Cost.CGRID smSql.RunID = v2Cost.RunID diff --git a/migrator/sessions_costs_it_test.go b/migrator/sessions_costs_it_test.go index dcbda2c6b..ab9d80e7a 100755 --- a/migrator/sessions_costs_it_test.go +++ b/migrator/sessions_costs_it_test.go @@ -190,21 +190,29 @@ func testSessionCostITMigrateAndMove(t *testing.T) { t.Error(err) } currentVersion := engine.Versions{ - utils.COST_DETAILS: 2, utils.SessionSCosts: 2, - utils.CDRs: 1, } err = sCostMigrator.storDBOut.SetVersions(currentVersion, false) if err != nil { - t.Error("Error when setting version for CDRs ", err.Error()) + t.Error("Error when setting version for SessionsCosts ", err.Error()) + } + if vrs, err := sCostMigrator.storDBOut.GetVersions(""); err != nil { + t.Error(err) + } else if vrs[utils.SessionSCosts] != 2 { + t.Errorf("Unexpected version returned: %d", vrs[utils.SessionSCosts]) } err, _ = sCostMigrator.Migrate([]string{utils.MetaSessionsCosts}) if err != nil { - t.Error("Error when migrating CDRs ", err.Error()) + t.Error("Error when migrating SessionsCosts ", err.Error()) } if rcvCosts, err := sCostMigrator.storDBOut.GetSMCosts("", utils.DEFAULT_RUNID, "", ""); err != nil { t.Error(err) } else if len(rcvCosts) != 1 { - t.Errorf("Unexpected number of CDRs returned: %d", len(rcvCosts)) + t.Errorf("Unexpected number of SessionsCosts returned: %d", len(rcvCosts)) + } + if vrs, err := sCostMigrator.storDBOut.GetVersions(""); err != nil { + t.Error(err) + } else if vrs[utils.SessionSCosts] != 3 { + t.Errorf("Unexpected version returned: %d", vrs[utils.SessionSCosts]) } }