From 43daf3efe565ae193f7ce7dc5b51aad695ef33b6 Mon Sep 17 00:00:00 2001 From: arberkatellari Date: Thu, 25 May 2023 03:56:39 -0400 Subject: [PATCH] Add error handler for Mongo GetCDrs remove --- engine/storage_mongo_stordb.go | 3 +++ migrator/cdrs_it_test.go | 14 ++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/engine/storage_mongo_stordb.go b/engine/storage_mongo_stordb.go index b06e094b7..be3cc18ee 100644 --- a/engine/storage_mongo_stordb.go +++ b/engine/storage_mongo_stordb.go @@ -1102,6 +1102,9 @@ func (ms *MongoStorage) GetCDRs(qryFltr *utils.CDRsFilter, remove bool) ([]*CDR, var chgd int64 err := ms.query(func(sctx mongo.SessionContext) (err error) { dr, err := ms.getCol(ColCDRs).DeleteMany(sctx, filters) + if err != nil { + return err + } chgd = dr.DeletedCount return err }) diff --git a/migrator/cdrs_it_test.go b/migrator/cdrs_it_test.go index efd342569..0a6a07a89 100755 --- a/migrator/cdrs_it_test.go +++ b/migrator/cdrs_it_test.go @@ -44,6 +44,7 @@ var sTestsCdrIT = []func(t *testing.T){ testCdrITConnect, testCdrITFlush, testCdrITMigrateAndMove, + testMongoGetCdrsRemoveErr, } func TestCdrITMongo(t *testing.T) { @@ -187,3 +188,16 @@ func testCdrITMigrateAndMove(t *testing.T) { t.Errorf("Unexpected version returned: %d", vrs[utils.CDRs]) } } + +func testMongoGetCdrsRemoveErr(t *testing.T) { + cdrMigrator.Close() + + expErr := "client is disconnected" + if cdrPathIn == "/usr/share/cgrates/conf/samples/tutmongo" { + _, _, err := cdrMigrator.storDBOut.StorDB().GetCDRs(new(utils.CDRsFilter), true) + if err == nil || err.Error() != expErr { + t.Errorf("Expected error <%v>, Received <%v>", expErr, err) + } + } + +}