diff --git a/apier/v1/resourcesv1_it_test.go b/apier/v1/resourcesv1_it_test.go index 5382577b9..eebea40e9 100644 --- a/apier/v1/resourcesv1_it_test.go +++ b/apier/v1/resourcesv1_it_test.go @@ -110,9 +110,12 @@ var ( func TestRsV1IT(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") - rlsV1ConfDIR = "tutinternal" - sTestsRLSV1 = sTestsRLSV1[:len(sTestsRLSV1)-24] + rlsV1ConfDIR = "tutinternal_offline" + defer func() { + if err := os.RemoveAll("/tmp/internal_db"); err != nil { + t.Error(err) + } + }() case utils.MetaMySQL: rlsV1ConfDIR = "tutmysql" case utils.MetaMongo: @@ -133,6 +136,14 @@ func testV1RsLoadConfig(t *testing.T) { if rlsV1Cfg, err = config.NewCGRConfigFromPath(rlsV1CfgPath); err != nil { t.Error(err) } + if *utils.DBType == utils.MetaInternal { + if err := os.MkdirAll(rlsV1Cfg.DataDbCfg().Opts.InternalDBDumpPath, 0755); err != nil { + t.Fatal(err) + } + if err := os.MkdirAll(rlsV1Cfg.StorDbCfg().Opts.InternalDBDumpPath, 0755); err != nil { + t.Fatal(err) + } + } } func testV1RsInitDataDb(t *testing.T) { diff --git a/apier/v1/sessions_process_event_it_test.go b/apier/v1/sessions_process_event_it_test.go index 8f3efe242..add9fc1cd 100644 --- a/apier/v1/sessions_process_event_it_test.go +++ b/apier/v1/sessions_process_event_it_test.go @@ -68,7 +68,6 @@ var sTestSessionSv1ProcessEvent = []func(t *testing.T){ func TestSSv1ItProcessEventWithPrepaid(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") sessionsConfDIR = "sessions_internal" case utils.MetaMySQL: sessionsConfDIR = "sessions_mysql" @@ -89,7 +88,6 @@ func TestSSv1ItProcessEventWithPrepaid(t *testing.T) { func TestSSv1ItProcessEventWithPostPaid(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") sessionsConfDIR = "sessions_internal" case utils.MetaMySQL: sessionsConfDIR = "sessions_mysql" @@ -111,7 +109,6 @@ func TestSSv1ItProcessEventWithPostPaid(t *testing.T) { func TestSSv1ItProcessEventWithRated(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") sessionsConfDIR = "sessions_internal" case utils.MetaMySQL: sessionsConfDIR = "sessions_mysql" @@ -133,7 +130,6 @@ func TestSSv1ItProcessEventWithRated(t *testing.T) { func TestSSv1ItProcessEventWithPseudoPrepaid(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") sessionsConfDIR = "sessions_internal" case utils.MetaMySQL: sessionsConfDIR = "sessions_mysql" diff --git a/apier/v1/sessions_thresholds_it_test.go b/apier/v1/sessions_thresholds_it_test.go index b1358e09a..6a1068bdd 100644 --- a/apier/v1/sessions_thresholds_it_test.go +++ b/apier/v1/sessions_thresholds_it_test.go @@ -67,7 +67,6 @@ var ( func TestSessionSITtests(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") sessionsConfDIR = "sessions_internal" case utils.MetaMySQL: sessionsConfDIR = "sessions_mysql" diff --git a/apier/v1/sessionsv1_it_test.go b/apier/v1/sessionsv1_it_test.go index eb83c1542..ae6b7621b 100644 --- a/apier/v1/sessionsv1_it_test.go +++ b/apier/v1/sessionsv1_it_test.go @@ -107,9 +107,6 @@ func TestSSv1ItWithPrepaid(t *testing.T) { if *utils.DBType == utils.MetaPostgres { t.SkipNow() } - if *utils.DBType == utils.MetaInternal { - t.Skip("unfinished, resources solution needed") - } sSV1RequestType = utils.MetaPrepaid for _, stest := range sTestSessionSv1 { t.Run(sSV1RequestType, stest) @@ -120,9 +117,6 @@ func TestSSv1ItWithPostPaid(t *testing.T) { if *utils.DBType == utils.MetaPostgres { t.SkipNow() } - if *utils.DBType == utils.MetaInternal { - t.Skip("unfinished, resources solution needed") - } sSV1RequestType = utils.MetaPostpaid for _, stest := range sTestSessionSv1 { t.Run(sSV1RequestType, stest) @@ -133,9 +127,6 @@ func TestSSv1ItWithRated(t *testing.T) { if *utils.DBType == utils.MetaPostgres { t.SkipNow() } - if *utils.DBType == utils.MetaInternal { - t.Skip("unfinished, resources solution needed") - } sSV1RequestType = utils.MetaRated for _, stest := range sTestSessionSv1 { t.Run(sSV1RequestType, stest) @@ -146,9 +137,6 @@ func TestSSv1ItWithPseudoPrepaid(t *testing.T) { if *utils.DBType == utils.MetaPostgres { t.SkipNow() } - if *utils.DBType == utils.MetaInternal { - t.Skip("unfinished, resources solution needed") - } sSV1RequestType = utils.MetaPseudoPrepaid for _, stest := range sTestSessionSv1 { t.Run(sSV1RequestType, stest) diff --git a/cmd/cgr-loader/cgr-loader_remove_it_test.go b/cmd/cgr-loader/cgr-loader_remove_it_test.go index 72a7fd9f4..f82b14ed9 100644 --- a/cmd/cgr-loader/cgr-loader_remove_it_test.go +++ b/cmd/cgr-loader/cgr-loader_remove_it_test.go @@ -387,7 +387,6 @@ func testCgrLdrGetStatsProfileAfterLoad(t *testing.T) { ActivationInterval: &utils.ActivationInterval{ ActivationTime: time.Date(2014, time.July, 29, 15, 0, 0, 0, time.UTC), }, - Stored: true, } var replySts *engine.StatQueueProfile if err := cgrLdrRPC.Call(context.Background(), utils.APIerSv1GetStatQueueProfile, diff --git a/data/conf/samples/dynamic_account_threshold/cgrates.json b/data/conf/samples/dynamic_account_threshold/cgrates.json index ee910fcbd..424f3103c 100644 --- a/data/conf/samples/dynamic_account_threshold/cgrates.json +++ b/data/conf/samples/dynamic_account_threshold/cgrates.json @@ -2,7 +2,6 @@ "general": { "log_level": 7, - "reply_timeout": "10s", }, "data_db": { diff --git a/data/conf/samples/sessions_backup_internal/cgrates.json b/data/conf/samples/sessions_backup_internal/cgrates.json new file mode 100644 index 000000000..6f3057a4c --- /dev/null +++ b/data/conf/samples/sessions_backup_internal/cgrates.json @@ -0,0 +1,65 @@ +{ + // Real-time Online/Offline Charging System (OCS) for Telecom & ISP environments + // Copyright (C) ITsysCOM GmbH + + "general": { + "log_level": 7, + "node_id":"BackupSessionsNode", + }, + + "data_db": { + "db_type": "*internal", + "opts":{ + "internalDBDumpPath": "/tmp/internal_db/datadb", + "internalDBDumpInterval": "-1", + "internalDBRewriteInterval": "1s", + } + }, + + "stor_db": { + "db_type": "*internal", + "opts":{ + "internalDBDumpPath": "/tmp/internal_db/stordb", + "internalDBDumpInterval": "-1", + "internalDBRewriteInterval": "-2", //rewrite on shutdown + } + }, + + "schedulers": { + "enabled": true, + }, + + "rals": { + "enabled": true, + }, + + "cdrs": { + "enabled": true, + }, + + "chargers": { + "enabled": true, + "attributes_conns": ["*localhost"], + }, + + "sessions": { + "enabled": true, + "rals_conns": ["*localhost"], + "cdrs_conns": ["*localhost"], + "chargers_conns": ["*localhost"], + "default_usage":{ + "*voice":"4s" + }, + "backup_interval": "-1", + }, + + "attributes": { + "enabled": true, + }, + + "apiers": { + "enabled": true, + "scheduler_conns": ["*localhost"], + } +} + \ No newline at end of file diff --git a/data/conf/samples/tutinternal_offline/cgrates.json b/data/conf/samples/tutinternal_offline/cgrates.json new file mode 100644 index 000000000..1c47cd9ac --- /dev/null +++ b/data/conf/samples/tutinternal_offline/cgrates.json @@ -0,0 +1,122 @@ +{ + +"general": { + "log_level": 7, + "reply_timeout": "50s" +}, + + +"listen": { + "rpc_json": ":2012", + "rpc_gob": ":2013", + "http": ":2080" +}, + + +"data_db": { + "db_type": "*internal", + "opts":{ + "internalDBDumpPath": "/tmp/internal_db/datadb", + "internalDBDumpInterval": "-1" + } +}, + + +"stor_db": { + "db_type": "*internal", + "opts":{ + "internalDBDumpPath": "/tmp/internal_db/stordb", + "internalDBDumpInterval": "-1" + } +}, + + +"rals": { + "enabled": true, + "thresholds_conns": ["*internal"], + "max_increments":3000000 +}, + + +"schedulers": { + "enabled": true, + "cdrs_conns": ["*internal"], + "stats_conns": ["*localhost"] +}, + + +"cdrs": { + "enabled": true, + "chargers_conns":["*internal"], +}, + + +"attributes": { + "enabled": true, + "stats_conns": ["*localhost"], + "resources_conns": ["*localhost"], + "apiers_conns": ["*localhost"] +}, + + +"chargers": { + "enabled": true, + "attributes_conns": ["*internal"] +}, + + +"resources": { + "enabled": true, + "store_interval": "-1", + "thresholds_conns": ["*internal"] +}, + + +"stats": { + "enabled": true, + "store_interval": "-1", + "thresholds_conns": ["*internal"] +}, + +"thresholds": { + "enabled": true, + "store_interval": "-1", + "sessions_conns": ["*internal"], + "apiers_conns": ["*internal"] +}, + + +"routes": { + "enabled": true, + "prefix_indexed_fields":["*req.Destination"], + "stats_conns": ["*internal"], + "resources_conns": ["*internal"], + "rals_conns": ["*internal"] +}, + + +"sessions": { + "enabled": true, + "routes_conns": ["*internal"], + "resources_conns": ["*internal"], + "attributes_conns": ["*internal"], + "rals_conns": ["*internal"], + "cdrs_conns": ["*internal"], + "chargers_conns": ["*internal"] +}, + + +"apiers": { + "enabled": true, + "scheduler_conns": ["*internal"] +}, + + +"filters": { + "stats_conns": ["*localhost"], + "resources_conns": ["*internal"], + "apiers_conns": ["*internal"] +} + + +} diff --git a/data/tariffplans/dataconverters/Stats.csv b/data/tariffplans/dataconverters/Stats.csv index 18acfeb01..24856be1b 100644 --- a/data/tariffplans/dataconverters/Stats.csv +++ b/data/tariffplans/dataconverters/Stats.csv @@ -1,2 +1,2 @@ #Tenant[0],Id[1],FilterIDs[2],ActivationInterval[3],QueueLength[4],TTL[5],MinItems[6],Metrics[7],MetricFilterIDs[8],Stored[9],Blocker[10],Weight[11],ThresholdIDs[12] -cgrates.org,Stat_1,FLTR_STAT_1,2014-07-29T15:00:00Z,100,10s,0,*acd;*tcd;*asr,,true,true,30,*none \ No newline at end of file +cgrates.org,Stat_1,FLTR_STAT_1,2014-07-29T15:00:00Z,100,10s,0,*acd;*tcd;*asr,,false,true,30,*none \ No newline at end of file diff --git a/data/tariffplans/testit/Stats.csv b/data/tariffplans/testit/Stats.csv index e109a6bbd..ddcf914de 100644 --- a/data/tariffplans/testit/Stats.csv +++ b/data/tariffplans/testit/Stats.csv @@ -1,6 +1,6 @@ #Tenant[0],Id[1],FilterIDs[2],ActivationInterval[3],QueueLength[4],TTL[5],MinItems[6],Metrics[7],MetricFilterIDs[8],Stored[9],Blocker[10],Weight[11],ThresholdIDs[12] -cgrates.org,Stat_1,FLTR_STAT_1,2014-07-29T15:00:00Z,100,10s,0,*acd;*tcd;*asr,,true,true,30,*none -cgrates.org,Stat_1_1,FLTR_STAT_1_1,2014-07-29T15:00:00Z,100,1s,0,*acd;*tcd;*pdd,,true,true,30,*none +cgrates.org,Stat_1,FLTR_STAT_1,2014-07-29T15:00:00Z,100,10s,0,*acd;*tcd;*asr,,false,true,30,*none +cgrates.org,Stat_1_1,FLTR_STAT_1_1,2014-07-29T15:00:00Z,100,1s,0,*acd;*tcd;*pdd,,false,true,30,*none cgrates.org,Stat_2,FLTR_STAT_2,2014-07-29T15:00:00Z,100,1s,0,*acd;*tcd;*asr,,false,true,30,*none cgrates.org,Stat_3,FLTR_STAT_3,2014-07-29T15:00:00Z,100,1s,0,*acd;*tcd;*asr,,false,true,30,*none cgrates.org,Stat_Supplier1,*string:~*req.StatID:Stat_Supplier1,2014-07-29T15:00:00Z,100,1s,0,*sum#~*req.LoadReq,,true,true,30,*none diff --git a/engine/libtest.go b/engine/libtest.go index 1160248ba..e9ae5764d 100644 --- a/engine/libtest.go +++ b/engine/libtest.go @@ -165,7 +165,7 @@ func LoadTariffPlanFromFolder(tpPath, timezone string, dm *DataManager, disable_ return utils.NewErrServerError(err) } loader, err := NewTpReader(dm.dataDB, csvStorage, "", - timezone, cacheConns, schedConns, false) + timezone, cacheConns, schedConns) if err != nil { return utils.NewErrServerError(err) } diff --git a/engine/loader_csv_test.go b/engine/loader_csv_test.go index 09073c3a0..dcf5d3f5e 100644 --- a/engine/loader_csv_test.go +++ b/engine/loader_csv_test.go @@ -300,7 +300,7 @@ func init() { ActionsCSVContent, ActionPlansCSVContent, ActionTriggersCSVContent, AccountActionsCSVContent, ResourcesCSVContent, IPsCSVContent, StatsCSVContent, TrendsCSVContent, RankingsCSVContent, ThresholdsCSVContent, FiltersCSVContent, RoutesCSVContent, AttributesCSVContent, - ChargersCSVContent, DispatcherCSVContent, DispatcherHostCSVContent), testTPID, "", nil, nil, false) + ChargersCSVContent, DispatcherCSVContent, DispatcherHostCSVContent), testTPID, "", nil, nil) if err != nil { log.Print("error when creating TpReader:", err) } diff --git a/engine/tpreader_test.go b/engine/tpreader_test.go index 9939dfb15..c55a9fab5 100644 --- a/engine/tpreader_test.go +++ b/engine/tpreader_test.go @@ -1071,7 +1071,7 @@ func TestTPReaderLoadDestinationsFiltered(t *testing.T) { }, []string{"groupId"}, true, "tId") db.db = tscache - tpr, err := NewTpReader(db, db, "itemId", "local", nil, nil, true) + tpr, err := NewTpReader(db, db, "itemId", "local", nil, nil) if err != nil { t.Error(err) } @@ -1097,7 +1097,7 @@ func TestTPReaderLoadAll(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(nil, db, "", "local", nil, nil, false) + tpr, err := NewTpReader(nil, db, "", "local", nil, nil) if err != nil { t.Error(err) } @@ -1188,7 +1188,7 @@ func TestTpReaderIsValid(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(nil, db, "", "local", nil, nil, false) + tpr, err := NewTpReader(nil, db, "", "local", nil, nil) if err != nil { t.Error(err) } @@ -1241,7 +1241,7 @@ func TestTpReaderLoadAccountActions(t *testing.T) { t.Error(dErr) } db.db = tscache - tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil) if err != nil { t.Error(err) } @@ -1460,7 +1460,7 @@ func TestTpReaderLoadTimingsErr(t *testing.T) { t.Error(dErr) } db.db = tscache - tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil) if err != nil { t.Error(err) } @@ -1498,7 +1498,7 @@ func TestLoadDestinationRatesErr(t *testing.T) { t.Error(dErr) } db.db = tscache - tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil) if err != nil { t.Error(err) } @@ -1556,7 +1556,7 @@ func TestTpReaderLoadRatingPlansFilteredErr(t *testing.T) { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil) if err != nil { t.Error(err) } @@ -1589,7 +1589,7 @@ func TestLoadRatingProfilesFiltered(t *testing.T) { t.Error(dErr) } db.db = tscache - tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "local", nil, nil) if err != nil { t.Error(err) } @@ -1649,7 +1649,7 @@ func TestTpReaderLoadActionTriggers(t *testing.T) { t.Error(dErr) } db.db = tscache - tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil) if err != nil { t.Error(err) } @@ -1737,7 +1737,7 @@ func TestTpReaderSetDestination(t *testing.T) { t.Error(dErr) } db.db = tscache - tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil) if err != nil { t.Error(err) } @@ -1773,7 +1773,7 @@ func TestTPReaderLoadAccountActionsFilteredErr(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil) if err != nil { t.Error(err) } @@ -1822,7 +1822,7 @@ func TestTprRemoveFromDatabase(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil) if err != nil { t.Error(err) } @@ -1884,7 +1884,7 @@ func TestLoadActionPlansErrs(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "tpr", "UTC", nil, nil, true) + tpr, err := NewTpReader(db, db, "tpr", "UTC", nil, nil) if err != nil { t.Error(err) } @@ -1935,7 +1935,7 @@ func TestLoadRatingPlansFiltered(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil, true) + tpr, err := NewTpReader(db, db, "*prf", "UTC", nil, nil) if err != nil { t.Error(err) } @@ -2067,7 +2067,7 @@ func TestTPRLoadRatingProfiles(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "RP1", "", nil, nil, false) + tpr, err := NewTpReader(db, db, "RP1", "", nil, nil) if err != nil { t.Error(err) @@ -2133,7 +2133,7 @@ func TestTPRLoadAccountActions(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "", "", nil, nil, false) + tpr, err := NewTpReader(db, db, "", "", nil, nil) if err != nil { t.Error(err) @@ -2163,7 +2163,7 @@ func TestTpReaderRemoveFromDatabase(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "", "", nil, nil, false) + tpr, err := NewTpReader(db, db, "", "", nil, nil) if err != nil { t.Error(err) } @@ -2229,7 +2229,7 @@ func TestTpReaderRemoveFromDatabaseDspPrf(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "", "", nil, nil, false) + tpr, err := NewTpReader(db, db, "", "", nil, nil) if err != nil { t.Error(err) } @@ -2273,7 +2273,7 @@ func TestTpReaderRemoveFromDatabaseDspHst(t *testing.T) { if dErr != nil { t.Error(dErr) } - tpr, err := NewTpReader(db, db, "", "", nil, nil, false) + tpr, err := NewTpReader(db, db, "", "", nil, nil) if err != nil { t.Error(err) } @@ -2318,7 +2318,7 @@ func TestTprLoadAccountActionFiltered(t *testing.T) { if err != nil { t.Error(err) } - tpr, err := NewTpReader(dataDb, storDb, "TP1", "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil, false) + tpr, err := NewTpReader(dataDb, storDb, "TP1", "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil) if err != nil { t.Error(err) } @@ -2492,7 +2492,7 @@ func TestTprLoadRatingPlansFiltered(t *testing.T) { }, }} storDb.SetTPRatingPlans([]*utils.TPRatingPlan{rp}) - tpr, err := NewTpReader(dataDb, storDb, "TP1", "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil, false) + tpr, err := NewTpReader(dataDb, storDb, "TP1", "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil) if err != nil { t.Error(err) } diff --git a/engine/z_loader_it_test.go b/engine/z_loader_it_test.go index 026828f5a..1cf1b000d 100644 --- a/engine/z_loader_it_test.go +++ b/engine/z_loader_it_test.go @@ -149,7 +149,7 @@ func testLoaderITRemoveLoad(t *testing.T) { t.Fatal(err) } loader, err = NewTpReader(dataDbCsv, csvStorage, "", "", - []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil, false) + []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil) if err != nil { t.Error(err) } @@ -234,7 +234,7 @@ func testLoaderITLoadFromCSV(t *testing.T) { t.Fatal(err) } loader, err = NewTpReader(dataDbCsv, csvStorage, "", "", - []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil, false) + []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil) if err != nil { t.Error(err) } @@ -564,7 +564,7 @@ func testLoaderITImportToStorDb(t *testing.T) { // Loads data from storDb into dataDb func testLoaderITLoadFromStorDb(t *testing.T) { - loader, _ := NewTpReader(dataDbCsv, storDb, utils.TestSQL, "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil, false) + loader, _ := NewTpReader(dataDbCsv, storDb, utils.TestSQL, "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil) if err := loader.LoadDestinations(); err != nil && err.Error() != utils.NotFoundCaps { t.Error("Failed loading destinations: ", err.Error()) } @@ -601,7 +601,7 @@ func testLoaderITLoadFromStorDb(t *testing.T) { } func testLoaderITLoadIndividualProfiles(t *testing.T) { - loader, _ := NewTpReader(dataDbCsv, storDb, utils.TestSQL, "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil, false) + loader, _ := NewTpReader(dataDbCsv, storDb, utils.TestSQL, "", []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)}, nil) // Load ratingPlans. This will also set destination keys if rps, err := storDb.GetTPRatingPlans(utils.TestSQL, "", nil); err != nil { t.Fatal("Could not retrieve rating plans") diff --git a/general_tests/acntacts_test.go b/general_tests/acntacts_test.go index f9a755b1a..b1f3faaa4 100644 --- a/general_tests/acntacts_test.go +++ b/general_tests/acntacts_test.go @@ -64,7 +64,7 @@ ENABLE_ACNT,*enable_account,,,,,,,,,,,,,false,false,10` csvr, err := engine.NewTpReader(dbAcntActs.DataDB(), engine.NewStringCSVStorage(utils.CSVSep, destinations, timings, rates, destinationRates, ratingPlans, ratingProfiles, sharedGroups, actions, actionPlans, actionTriggers, accountActions, - resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil, false) + resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/auth_test.go b/general_tests/auth_test.go index a16fba116..1bcbc2688 100644 --- a/general_tests/auth_test.go +++ b/general_tests/auth_test.go @@ -67,7 +67,7 @@ func TestAuthLoadCsvError(t *testing.T) { chargerProfiles := `` csvr, err := engine.NewTpReader(dbAuth.DataDB(), engine.NewStringCSVStorage(utils.CSVSep, destinations, timings, rates, destinationRates, ratingPlans, ratingProfiles, sharedGroups, actions, actionPlans, actionTriggers, accountActions, - resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil, false) + resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil) if err != nil { t.Error(err) } @@ -104,7 +104,7 @@ cgrates.org,call,*any,2013-01-06T00:00:00Z,RP_ANY,` chargerProfiles := `` csvr, err := engine.NewTpReader(dbAuth.DataDB(), engine.NewStringCSVStorage(utils.CSVSep, destinations, timings, rates, destinationRates, ratingPlans, ratingProfiles, sharedGroups, actions, actionPlans, actionTriggers, accountActions, - resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil, false) + resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/costs1_test.go b/general_tests/costs1_test.go index 92da2ceb9..b42b3f0ee 100644 --- a/general_tests/costs1_test.go +++ b/general_tests/costs1_test.go @@ -62,7 +62,7 @@ cgrates.org,sms,*any,2012-01-01T00:00:00Z,RP_SMS1,` utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, - ), utils.EmptyString, utils.EmptyString, nil, nil, false) + ), utils.EmptyString, utils.EmptyString, nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/datachrg1_test.go b/general_tests/datachrg1_test.go index e7c9f4eca..f8625755b 100644 --- a/general_tests/datachrg1_test.go +++ b/general_tests/datachrg1_test.go @@ -53,7 +53,7 @@ RP_DATA1,DR_DATA_2,TM2,10` utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, ), - utils.EmptyString, utils.EmptyString, nil, nil, false) + utils.EmptyString, utils.EmptyString, nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/ddazmbl1_test.go b/general_tests/ddazmbl1_test.go index c64b0e023..9bea5dab1 100644 --- a/general_tests/ddazmbl1_test.go +++ b/general_tests/ddazmbl1_test.go @@ -74,7 +74,7 @@ TOPUP10_AT,TOPUP10_AC1,ASAP,10` destinationRates, ratingPlans, ratingProfiles, sharedGroups, actions, actionPlans, actionTriggers, accountActions, resLimits, ips, stats, trends, rankings, thresholds, filters, suppliers, - attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil, false) + attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/ddazmbl2_test.go b/general_tests/ddazmbl2_test.go index f21fda059..371e3caea 100644 --- a/general_tests/ddazmbl2_test.go +++ b/general_tests/ddazmbl2_test.go @@ -72,7 +72,7 @@ TOPUP10_AT,TOPUP10_AC1,ASAP,10` csvr, err := engine.NewTpReader(dataDB2.DataDB(), engine.NewStringCSVStorage(utils.CSVSep, destinations, timings, rates, destinationRates, ratingPlans, ratingProfiles, sharedGroups, actions, actionPlans, actionTriggers, accountActions, resLimits, ips, - stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil, false) + stats, trends, rankings, thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/ddazmbl3_test.go b/general_tests/ddazmbl3_test.go index 059ca4b4b..80e21f0c3 100644 --- a/general_tests/ddazmbl3_test.go +++ b/general_tests/ddazmbl3_test.go @@ -70,7 +70,7 @@ cgrates.org,call,discounted_minutes,2013-01-06T00:00:00Z,RP_UK_Mobile_BIG5_PKG,` csvr, err := engine.NewTpReader(dataDB3.DataDB(), engine.NewStringCSVStorage(utils.CSVSep, destinations, timings, rates, destinationRates, ratingPlans, ratingProfiles, sharedGroups, actions, actionPlans, actionTriggers, accountActions, resLimits, ips, stats, trends, rankings, - thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil, false) + thresholds, filters, suppliers, attrProfiles, chargerProfiles, ``, ""), "", "", nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/dynamic_thresholds_it_test.go b/general_tests/dynamic_thresholds_it_test.go index 469cac1e2..74fa922af 100644 --- a/general_tests/dynamic_thresholds_it_test.go +++ b/general_tests/dynamic_thresholds_it_test.go @@ -391,9 +391,16 @@ func testDynThdGetAccountAfterDebit(t *testing.T) { } func testDynThdGetThresholdAfterDebit(t *testing.T) { + expThd := &engine.Threshold{ + Tenant: "cgrates.org", + ID: "THD_ACNT_1002", + Hits: 1, + } var result2 *engine.Threshold - if err := dynThdRpc.Call(context.Background(), utils.ThresholdSv1GetThreshold, &utils.TenantIDWithAPIOpts{TenantID: &utils.TenantID{Tenant: "cgrates.org", ID: "THD_ACNT_1002"}}, &result2); err == nil || err.Error() != utils.ErrNotFound.Error() { + if err := dynThdRpc.Call(context.Background(), utils.ThresholdSv1GetThreshold, &utils.TenantIDWithAPIOpts{TenantID: &utils.TenantID{Tenant: "cgrates.org", ID: "THD_ACNT_1002"}}, &result2); err != nil { t.Error(err) + } else if result2.Snooze = expThd.Snooze; !reflect.DeepEqual(result2, expThd) { + t.Errorf("\nexpected: <%+v>, \nreceived: <%+v>", utils.ToJSON(expThd), utils.ToJSON(result2)) } } diff --git a/general_tests/export_it_test.go b/general_tests/export_it_test.go index 1e6c734ac..f7df3b397 100644 --- a/general_tests/export_it_test.go +++ b/general_tests/export_it_test.go @@ -279,7 +279,7 @@ func testExpVerifyStats(t *testing.T) { }, }, Blocker: true, - Stored: true, + Stored: false, Weight: 30, MinItems: 0, ThresholdIDs: []string{utils.MetaNone}, diff --git a/general_tests/reproc_cdrs_for_stats_it_test.go b/general_tests/reproc_cdrs_for_stats_it_test.go index a8803c493..6e02306fd 100644 --- a/general_tests/reproc_cdrs_for_stats_it_test.go +++ b/general_tests/reproc_cdrs_for_stats_it_test.go @@ -369,7 +369,7 @@ func testRpcdrsNewEngineSameDB(t *testing.T) { tpFiles := map[string]string{ utils.StatsCsv: `#Tenant[0],Id[1],FilterIDs[2],ActivationInterval[3],QueueLength[4],TTL[5],MinItems[6],Metrics[7],MetricFilterIDs[8],Stored[9],Blocker[10],Weight[11],ThresholdIDs[12] -cgrates.org,STAT_AGG,,2014-07-29T15:00:00Z,0,-1,0,*tcd;*tcc;*sum#1,,true,false,30,*none`, +cgrates.org,STAT_AGG,,2014-07-29T15:00:00Z,0,-1,0,*tcd;*tcc;*sum#1,,false,false,30,*none`, } if _, err := engine.StopStartEngine(rpcdrsCfgPath, *utils.WaitRater); err != nil { diff --git a/general_tests/resourcesv1_it_test.go b/general_tests/resourcesv1_it_test.go index af1e3d768..7d243f13e 100644 --- a/general_tests/resourcesv1_it_test.go +++ b/general_tests/resourcesv1_it_test.go @@ -55,7 +55,6 @@ var ( func TestRsV1IT(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") rlsV1ConfDIR = "tutinternal" case utils.MetaMySQL: rlsV1ConfDIR = "tutmysql" diff --git a/general_tests/routes_cases_it_test.go b/general_tests/routes_cases_it_test.go index fc3931ca2..ee655e328 100644 --- a/general_tests/routes_cases_it_test.go +++ b/general_tests/routes_cases_it_test.go @@ -81,7 +81,6 @@ var ( func TestRoutesCaseV1IT(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.Skip("unfinished, resources solution needed") rtsCaseSv1ConfDIR = "tutinternal" case utils.MetaMySQL: rtsCaseSv1ConfDIR = "tutmysql" diff --git a/general_tests/smschrg1_test.go b/general_tests/smschrg1_test.go index 463522b7a..ca54a5719 100644 --- a/general_tests/smschrg1_test.go +++ b/general_tests/smschrg1_test.go @@ -51,7 +51,7 @@ func TestSMSLoadCsvTpSmsChrg1(t *testing.T) { utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, utils.EmptyString, - utils.EmptyString), utils.EmptyString, utils.EmptyString, nil, nil, false) + utils.EmptyString), utils.EmptyString, utils.EmptyString, nil, nil) if err != nil { t.Error(err) } diff --git a/general_tests/trends_schedule_it_test.go b/general_tests/trends_schedule_it_test.go index 1388bf021..6c78be930 100644 --- a/general_tests/trends_schedule_it_test.go +++ b/general_tests/trends_schedule_it_test.go @@ -106,8 +106,8 @@ func TestTrendSchedule(t *testing.T) { cgrates.org,TREND_1,@every 1s,Stats1_1,,-1,-1,1,*last,1,false,Threshold1;Threshold2 cgrates.org,TREND_2,@every 1s,Stats1_2,,-1,-1,1,*last,1,false,*none`, utils.StatsCsv: `#Tenant[0],Id[1],FilterIDs[2],ActivationInterval[3],QueueLength[4],TTL[5],MinItems[6],Metrics[7],MetricFilterIDs[8],Stored[9],Blocker[10],Weight[11],ThresholdIDs[12] -cgrates.org,Stats1_1,*string:~*req.Account:1001,,,,,*tcc;*acd;*tcd,,true,,, -cgrates.org,Stats1_2,*string:~*req.Account:1002,,,,,*sum#~*req.Usage;*pdd,,true,,,`, +cgrates.org,Stats1_1,*string:~*req.Account:1001,,,,,*tcc;*acd;*tcd,,false,,, +cgrates.org,Stats1_2,*string:~*req.Account:1002,,,,,*sum#~*req.Usage;*pdd,,false,,,`, utils.ThresholdsCsv: `#Tenant[0],Id[1],FilterIDs[2],ActivationInterval[3],MaxHits[4],MinHits[5],MinSleep[6],Blocker[7],Weight[8],ActionIDs[9],Async[10],EeIDs[11] cgrates.org,Threshold1,*string:~*req.Metrics.*acd.ID:*acd,2024-07-29T15:00:00Z,-1,10,1s,false,10,,true, cgrates.org,Threshold2,*string:~*req.Metrics.*pdd.ID:*pdd,2024-07-29T15:00:00Z,-1,10,1s,false,10,,true, diff --git a/sessions/sessions_bkup_it_test.go b/sessions/sessions_bkup_it_test.go index 5a626d19d..386ba5ca2 100644 --- a/sessions/sessions_bkup_it_test.go +++ b/sessions/sessions_bkup_it_test.go @@ -23,6 +23,7 @@ package sessions import ( "fmt" + "os" "path" "testing" "time" @@ -94,7 +95,12 @@ var ( func TestSessionsBkup(t *testing.T) { switch *utils.DBType { case utils.MetaInternal: - t.SkipNow() + sBkupCfgDIR = "sessions_backup_internal" + defer func() { + if err := os.RemoveAll("/tmp/internal_db"); err != nil { + t.Error(err) + } + }() case utils.MetaMySQL: sBkupCfgDIR = "sessions_backup_mysql" case utils.MetaMongo: @@ -114,6 +120,14 @@ func testSessionSBkupInitCfg(t *testing.T) { if sBkupCfg, err = config.NewCGRConfigFromPath(sBkupCfgPath); err != nil { t.Fatal(err) } + if *utils.DBType == utils.MetaInternal { + if err := os.MkdirAll(sBkupCfg.DataDbCfg().Opts.InternalDBDumpPath, 0755); err != nil { + t.Fatal(err) + } + if err := os.MkdirAll(sBkupCfg.StorDbCfg().Opts.InternalDBDumpPath, 0755); err != nil { + t.Fatal(err) + } + } } // Remove data in both rating and accounting db @@ -433,7 +447,9 @@ func testSessionSBkupCallBackup2(t *testing.T) { } func testSessionSBkupGetBackedupSessions(t *testing.T) { - + if *utils.DBType == utils.MetaInternal { + t.SkipNow() + } if *utils.DBType == utils.MetaMySQL || *utils.DBType == utils.MetaPostgres { dataDB, err = engine.NewRedisStorage( fmt.Sprintf("%s:%s", sBkupCfg.DataDbCfg().Host, sBkupCfg.DataDbCfg().Port), @@ -560,6 +576,9 @@ func testSessionSBkupCallBackup3(t *testing.T) { } func testSessionSBkupCheckUpdatedAt(t *testing.T) { + if *utils.DBType == utils.MetaInternal { + t.SkipNow() + } var getBackSess []*Session storedSessions, err := dataDB.GetSessionsBackupDrv(sBkupCfg.GeneralCfg().NodeID, sBkupCfg.GeneralCfg().DefaultTenant)