diff --git a/actions/actions.go b/actions/actions.go index 226a856d3..84d6d3d2f 100644 --- a/actions/actions.go +++ b/actions/actions.go @@ -116,7 +116,7 @@ func (aS *ActionS) scheduleActions(ctx *context.Context, cgrEvs []*utils.CGREven } for _, sActs := range schedActSet { if sActs.schedule == utils.MetaASAP { - go aS.asapExecuteActions(ctx, sActs) + go aS.asapExecuteActions(context.Background(), sActs) continue } if _, err = crn.AddFunc(sActs.schedule, sActs.ScheduledExecute); err != nil { diff --git a/config/cdrscfg_test.go b/config/cdrscfg_test.go index 44280f358..1c54cf09c 100644 --- a/config/cdrscfg_test.go +++ b/config/cdrscfg_test.go @@ -178,7 +178,6 @@ func TestCdrsCfgAsMapInterface(t *testing.T) { "store_cdrs": true, "session_cost_retries": 5, "chargers_conns":["*internal:*chargers","*conn1"], - "rals_conns": ["*internal:*responder","*conn1"], "attributes_conns": ["*internal:*attributes","*conn1"], "thresholds_conns": ["*internal:*thresholds","*conn1"], "stats_conns": ["*internal:*stats","*conn1"], diff --git a/config/config_it_test.go b/config/config_it_test.go index 292f12749..2ad4d18b7 100644 --- a/config/config_it_test.go +++ b/config/config_it_test.go @@ -1322,7 +1322,6 @@ func testApisLoadFromPath(t *testing.T) { "prefix_indexed_fields":["*req.Destination"], "stats_conns": ["*internal"], "resources_conns": ["*internal"], - "rals_conns": ["*internal"] }, @@ -1331,7 +1330,6 @@ func testApisLoadFromPath(t *testing.T) { "routes_conns": ["*internal"], "resources_conns": ["*internal"], "attributes_conns": ["*internal"], - "rals_conns": ["*internal"], "cdrs_conns": ["*internal"], "chargers_conns": ["*internal"] }, diff --git a/config/routescfg_test.go b/config/routescfg_test.go index 2f3736ac0..e8051f616 100644 --- a/config/routescfg_test.go +++ b/config/routescfg_test.go @@ -148,7 +148,6 @@ func TestRouteSCfgAsMapInterface1(t *testing.T) { "attributes_conns": ["*internal:*attributes", "conn1"], "resources_conns": ["*internal:*resources", "conn1"], "stats_conns": ["*internal:*stats", "conn1"], - "rals_conns": ["*internal:*responder", "conn1"], "rates_conns": ["*internal:*rates", "conn1"], "accounts_conns": ["*internal:*accounts", "conn1"], "default_ratio":2, diff --git a/config/sessionscfg_test.go b/config/sessionscfg_test.go index 322d90a62..cc6fc13f9 100644 --- a/config/sessionscfg_test.go +++ b/config/sessionscfg_test.go @@ -563,7 +563,6 @@ func TestSessionSCfgAsMapInterfaceCase2(t *testing.T) { "enabled": true, "listen_bijson": "127.0.0.1:2018", "chargers_conns": ["*internal:*chargers", "*conn1"], - "rals_conns": ["*internal:*responder", "*conn1"], "cdrs_conns": ["*internal:*cdrs", "*conn1"], "resources_conns": ["*internal:*resources", "*conn1"], "thresholds_conns": ["*internal:*thresholds", "*conn1"], diff --git a/data/conf/samples/dispatchers/all/cgrates.json b/data/conf/samples/dispatchers/all/cgrates.json index e0247f971..63cd19113 100644 --- a/data/conf/samples/dispatchers/all/cgrates.json +++ b/data/conf/samples/dispatchers/all/cgrates.json @@ -60,7 +60,8 @@ "routes": { "enabled": true, - "rals_conns": ["*internal"] + "rates_conns": ["*internal"], + "accounts_conns": ["*internal"], }, "stats": { diff --git a/data/conf/samples/dispatchers/all2/cgrates.json b/data/conf/samples/dispatchers/all2/cgrates.json index 54f0987b5..59f05a936 100644 --- a/data/conf/samples/dispatchers/all2/cgrates.json +++ b/data/conf/samples/dispatchers/all2/cgrates.json @@ -55,7 +55,8 @@ "routes": { "enabled": true, - "rals_conns": ["*internal"], + "rates_conns": ["*internal"], + "accounts_conns": ["*internal"], }, "stats": { diff --git a/data/conf/samples/dispatchers/all2_mongo/cgrates.json b/data/conf/samples/dispatchers/all2_mongo/cgrates.json index bda8f282c..97bfd561c 100644 --- a/data/conf/samples/dispatchers/all2_mongo/cgrates.json +++ b/data/conf/samples/dispatchers/all2_mongo/cgrates.json @@ -59,7 +59,8 @@ "routes": { "enabled": true, - "rals_conns": ["*internal"], + "rates_conns": ["*internal"], + "accounts_conns": ["*internal"], }, "stats": { diff --git a/data/conf/samples/dispatchers/all2_mysql/cgrates.json b/data/conf/samples/dispatchers/all2_mysql/cgrates.json index 49d47b26f..c10f68963 100644 --- a/data/conf/samples/dispatchers/all2_mysql/cgrates.json +++ b/data/conf/samples/dispatchers/all2_mysql/cgrates.json @@ -56,7 +56,8 @@ "routes": { "enabled": true, - "rals_conns": ["*internal"], + "rates_conns": ["*internal"], + "accounts_conns": ["*internal"], }, "stats": { diff --git a/data/conf/samples/dispatchers/all_mongo/cgrates.json b/data/conf/samples/dispatchers/all_mongo/cgrates.json index aaa47d8d5..d77128caf 100644 --- a/data/conf/samples/dispatchers/all_mongo/cgrates.json +++ b/data/conf/samples/dispatchers/all_mongo/cgrates.json @@ -63,7 +63,8 @@ "routes": { "enabled": true, - "rals_conns": ["*internal"] + "rates_conns": ["*internal"], + "accounts_conns": ["*internal"], }, "stats": { diff --git a/data/conf/samples/dispatchers/all_mysql/cgrates.json b/data/conf/samples/dispatchers/all_mysql/cgrates.json index 7ade44aa9..cac6db65e 100644 --- a/data/conf/samples/dispatchers/all_mysql/cgrates.json +++ b/data/conf/samples/dispatchers/all_mysql/cgrates.json @@ -61,7 +61,8 @@ "routes": { "enabled": true, - "rals_conns": ["*internal"], + "rates_conns": ["*internal"], + "accounts_conns": ["*internal"], }, "stats": { diff --git a/data/conf/samples/registrarc/registrars_rpc_mongo/cgrates.json b/data/conf/samples/registrarc/registrars_rpc_mongo/cgrates.json index 91c4dbb48..05ca3fec4 100644 --- a/data/conf/samples/registrarc/registrars_rpc_mongo/cgrates.json +++ b/data/conf/samples/registrarc/registrars_rpc_mongo/cgrates.json @@ -46,4 +46,14 @@ "enabled": true, }, +"loaders": [ + { + "id": "*default", + "enabled": true, + "tenant": "cgrates.org", + "lockfile_path": ".cgr.lck", + "tp_in_dir": "/usr/share/cgrates/tariffplans/testit", + "tp_out_dir": "", + }, +], } diff --git a/data/conf/samples/registrarc/registrars_rpc_mysql/cgrates.json b/data/conf/samples/registrarc/registrars_rpc_mysql/cgrates.json index cde76ee80..059182073 100644 --- a/data/conf/samples/registrarc/registrars_rpc_mysql/cgrates.json +++ b/data/conf/samples/registrarc/registrars_rpc_mysql/cgrates.json @@ -43,4 +43,15 @@ "enabled": true, }, +"loaders": [ + { + "id": "*default", + "enabled": true, + "tenant": "cgrates.org", + "lockfile_path": ".cgr.lck", + "tp_in_dir": "/usr/share/cgrates/tariffplans/testit", + "tp_out_dir": "", + }, +], + } diff --git a/data/tariffplans/oldtutorial/Rates.csv b/data/tariffplans/oldtutorial/Rates.csv index f4ca8a14f..56d9d377b 100644 --- a/data/tariffplans/oldtutorial/Rates.csv +++ b/data/tariffplans/oldtutorial/Rates.csv @@ -1,10 +1,3 @@ -#Id,ConnectFee,Rate,RateUnit,RateIncrement,GroupIntervalStart -RT_10CNT,0.2,0.1,60s,60s,0s -RT_10CNT,0,0.05,60s,1s,60s -RT_20CNT,0.4,0.2,60s,60s,0s -RT_20CNT,0,0.1,60s,1s,60s -RT_40CNT,0.8,0.4,60s,30s,0s -RT_40CNT,0,0.2,60s,10s,60s -RT_1CNT,0,0.01,60s,60s,0s -RT_1CNT_PER_SEC,0,0.01,1s,1s,0s -RT_GENERIC_1,0,1,1,1,0 +#Tenant,ID,FilterIDs,Weights,MinCost,MaxCost,MaxCostStrategy,RateID,RateFilterIDs,RateActivationStart,RateWeights,RateBlocker,RateIntervalStart,RateFixedFee,RateRecurrentFee,RateUnit,RateIncrement +cgrates.org,RP_SPECIAL_1002,,;0,0.1,0.6,*free,RT_WEEK,,"* * * * *",;0,false,0s,,0.12,1m,1m +cgrates.org,RP_RETAIL1,,;0,0.1,0.6,*free,RT_WEEK,,"* * * * *",;0,false,0s,,0.12,1m,1m \ No newline at end of file diff --git a/data/tariffplans/oldtutorial/Rates.csv.old b/data/tariffplans/oldtutorial/Rates.csv.old new file mode 100644 index 000000000..f4ca8a14f --- /dev/null +++ b/data/tariffplans/oldtutorial/Rates.csv.old @@ -0,0 +1,10 @@ +#Id,ConnectFee,Rate,RateUnit,RateIncrement,GroupIntervalStart +RT_10CNT,0.2,0.1,60s,60s,0s +RT_10CNT,0,0.05,60s,1s,60s +RT_20CNT,0.4,0.2,60s,60s,0s +RT_20CNT,0,0.1,60s,1s,60s +RT_40CNT,0.8,0.4,60s,30s,0s +RT_40CNT,0,0.2,60s,10s,60s +RT_1CNT,0,0.01,60s,60s,0s +RT_1CNT_PER_SEC,0,0.01,1s,1s,0s +RT_GENERIC_1,0,1,1,1,0 diff --git a/data/tariffplans/tutorial/Rates.csv b/data/tariffplans/tutorial/Rates.csv new file mode 100644 index 000000000..98c354132 --- /dev/null +++ b/data/tariffplans/tutorial/Rates.csv @@ -0,0 +1,3 @@ +#Tenant,ID,FilterIDs,Weights,MinCost,MaxCost,MaxCostStrategy,RateID,RateFilterIDs,RateActivationStart,RateWeights,RateBlocker,RateIntervalStart,RateFixedFee,RateRecurrentFee,RateUnit,RateIncrement +cgrates.org,RP_1002_LOW,,;0,0.1,0.6,*free,RT_WEEK,,"* * * * *",;0,false,0s,,0.10,1m,1m +cgrates.org,RP_1002,,;0,0.1,0.6,*free,RT_WEEK,,"* * * * *",;0,false,0s,,0.12,1m,1m \ No newline at end of file diff --git a/dispatchers/caches_it_test.go b/dispatchers/caches_it_test.go index cbb5ffa84..6f1142ab2 100644 --- a/dispatchers/caches_it_test.go +++ b/dispatchers/caches_it_test.go @@ -146,6 +146,11 @@ func testDspChcLoadAfterFolder(t *testing.T) { expStats[utils.CacheAttributeFilterIndexes].Groups = 2 expStats[utils.CacheReverseFilterIndexes].Items = 8 expStats[utils.CacheReverseFilterIndexes].Groups = 6 + expStats[utils.CacheRateProfiles].Items = 2 + expStats[utils.CacheRateProfilesFilterIndexes].Items = 1 + expStats[utils.CacheRateProfilesFilterIndexes].Groups = 1 + expStats[utils.CacheRateFilterIndexes].Items = 2 + expStats[utils.CacheRateFilterIndexes].Groups = 2 if err := dispEngine.RPC.Call(utils.CacheSv1GetCacheStats, &args, &rcvStats); err != nil { t.Error(err) } else if !reflect.DeepEqual(expStats, rcvStats) { @@ -197,6 +202,8 @@ func testDspChcPrecacheStatus(t *testing.T) { utils.CacheActionProfilesFilterIndexes: utils.MetaReady, utils.CacheAccountsFilterIndexes: utils.MetaReady, utils.CacheAccounts: utils.MetaReady, + utils.MetaAPIBan: utils.MetaReady, + utils.CacheReplicationHosts: utils.MetaReady, } if err := dispEngine.RPC.Call(utils.CacheSv1PrecacheStatus, utils.AttrCacheIDsWithAPIOpts{ diff --git a/dispatchers/rates_it_test.go b/dispatchers/rates_it_test.go index 8151ef643..bdc24eed0 100644 --- a/dispatchers/rates_it_test.go +++ b/dispatchers/rates_it_test.go @@ -22,7 +22,6 @@ along with this program. If not, see package dispatchers import ( - "reflect" "testing" "time" @@ -123,10 +122,17 @@ func testDspRPrfCostForEvent(t *testing.T) { CostIntervals: []*utils.RateSIntervalCost{{ Increments: []*utils.RateSIncrementCost{{ Usage: utils.NewDecimal(int64(time.Minute), 0), + RateID: "ec268a8", CompressFactor: 1, }}, CompressFactor: 1, }}, + Rates: map[string]*utils.IntervalRate{"ec268a8": { + IntervalStart: utils.NewDecimal(0, 0), + RecurrentFee: utils.NewDecimalFromFloat64(0.12), + Unit: utils.NewDecimal(60000000000, 0), + Increment: utils.NewDecimal(60000000000, 0), + }}, } var rpCost *utils.RateProfileCost @@ -141,7 +147,7 @@ func testDspRPrfCostForEvent(t *testing.T) { utils.OptsAPIKey: "rPrf12345", }}, &rpCost); err != nil { t.Error(err) - } else if !reflect.DeepEqual(rpCost, exp) { + } else if !rpCost.Equals(exp) { t.Errorf("Expected %+v, received %+v", utils.ToJSON(exp), utils.ToJSON(rpCost)) } } @@ -187,10 +193,17 @@ func testDspRPrfCostForEventWithoutFilters(t *testing.T) { CostIntervals: []*utils.RateSIntervalCost{{ Increments: []*utils.RateSIncrementCost{{ Usage: utils.NewDecimal(int64(time.Minute), 0), + RateID: "ec268a8", CompressFactor: 60, }}, CompressFactor: 1, }}, + Rates: map[string]*utils.IntervalRate{"ec268a8": { + IntervalStart: utils.NewDecimal(0, 0), + RecurrentFee: utils.NewDecimalFromFloat64(0.25), + Unit: utils.NewDecimal(60000000000, 0), + Increment: utils.NewDecimal(1000000000, 0), + }}, } var rpCost *utils.RateProfileCost @@ -204,7 +217,7 @@ func testDspRPrfCostForEventWithoutFilters(t *testing.T) { utils.OptsAPIKey: "rPrf12345", }}, &rpCost); err != nil { t.Error(err) - } else if !reflect.DeepEqual(rpCost, exp) { + } else if !rpCost.Equals(exp) { t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(exp), utils.ToJSON(rpCost)) } } diff --git a/dispatchers/resources_it_test.go b/dispatchers/resources_it_test.go index 30b46fc41..567eaca40 100644 --- a/dispatchers/resources_it_test.go +++ b/dispatchers/resources_it_test.go @@ -228,7 +228,7 @@ func testDspResTestAuthKey3(t *testing.T) { "Destination": "1002"}, APIOpts: map[string]interface{}{ utils.OptsAPIKey: "res12345", - utils.OptsResourcesUsageID: "651a8db2-4f67-4cf8-b622-169e8a482e55", + utils.OptsResourcesUsageID: "651a8db2-4f67-4cf8-b622-169e8a482e51", }, } if err := dispEngine.RPC.Call(utils.ResourceSv1ReleaseResources, @@ -274,16 +274,12 @@ func testDspResTestAuthKey3(t *testing.T) { t.Errorf("Resources: %+v", utils.ToJSON(rs)) } if rs == nil { - t.Errorf("Expecting rs to not be nil") - // rs shoud not be nil so exit function - // to avoid nil segmentation fault; - // if this happens try to run this test manualy - return + t.Fatal("Expecting rs to not be nil") } // make sure Resource1 have no more active resources for _, r := range *rs { if r.ID == "ResGroup1" && - (len(r.Usages) != 1 || len(r.TTLIdx) != 0) { + (len(r.Usages) != 0 || len(r.TTLIdx) != 0) { t.Errorf("Unexpected resource: %+v", utils.ToJSON(r)) } } @@ -299,7 +295,7 @@ func testDspResTestAuthKey3(t *testing.T) { } // make sure Resource1 have no more active resources if r.ID == "ResGroup1" && - (len(r.Usages) != 1 || len(r.TTLIdx) != 0) { + (len(r.Usages) != 0 || len(r.TTLIdx) != 0) { t.Errorf("Unexpected resource: %+v", utils.ToJSON(r)) } diff --git a/dispatchers/routes_it_test.go b/dispatchers/routes_it_test.go index 20c5a3173..c5a24887f 100644 --- a/dispatchers/routes_it_test.go +++ b/dispatchers/routes_it_test.go @@ -146,7 +146,7 @@ func testDspSupGetSupFailover(t *testing.T) { RouteID: "route1", RouteParameters: "", SortingData: map[string]interface{}{ - utils.Cost: 0.3166, + utils.Cost: 0.1, utils.RatingPlanID: "RP_1002_LOW", utils.Weight: 10.0, }, @@ -155,7 +155,7 @@ func testDspSupGetSupFailover(t *testing.T) { RouteID: "route2", RouteParameters: "", SortingData: map[string]interface{}{ - utils.Cost: 0.6334, + utils.Cost: 0.12, utils.RatingPlanID: "RP_1002", utils.Weight: 20.0, }, @@ -226,7 +226,7 @@ func testDspSupTestAuthKey2(t *testing.T) { RouteID: "route1", RouteParameters: "", SortingData: map[string]interface{}{ - utils.Cost: 0.3166, + utils.Cost: 0.1, utils.RatingPlanID: "RP_1002_LOW", utils.Weight: 10.0, }, @@ -235,7 +235,7 @@ func testDspSupTestAuthKey2(t *testing.T) { RouteID: "route2", RouteParameters: "", SortingData: map[string]interface{}{ - utils.Cost: 0.6334, + utils.Cost: 0.12, utils.RatingPlanID: "RP_1002", utils.Weight: 20.0, }, @@ -288,7 +288,7 @@ func testDspSupGetSupRoundRobin(t *testing.T) { RouteID: "route1", RouteParameters: "", SortingData: map[string]interface{}{ - utils.Cost: 0.3166, + utils.Cost: 0.1, utils.RatingPlanID: "RP_1002_LOW", utils.Weight: 10.0, }, @@ -297,7 +297,7 @@ func testDspSupGetSupRoundRobin(t *testing.T) { RouteID: "route2", RouteParameters: "", SortingData: map[string]interface{}{ - utils.Cost: 0.6334, + utils.Cost: 0.12, utils.RatingPlanID: "RP_1002", utils.Weight: 20.0, }, @@ -353,7 +353,7 @@ func testDspSupGetSupplierForEvent(t *testing.T) { expected := engine.RouteProfile{ Tenant: "cgrates.org", ID: "ROUTE_ACNT_1002", - FilterIDs: []string{"FLTR_ACNT_1002", "*ai:~*req.AnswerTime:2017-11-27T00:00:00Z"}, + FilterIDs: []string{"FLTR_ACNT_1002"}, Sorting: utils.MetaLC, SortingParameters: []string{}, Routes: []*engine.Route{ diff --git a/general_tests/all_sections_cfg_rld_it_test.go b/general_tests/all_sections_cfg_rld_it_test.go index b9b2f7511..9558de640 100644 --- a/general_tests/all_sections_cfg_rld_it_test.go +++ b/general_tests/all_sections_cfg_rld_it_test.go @@ -43,11 +43,10 @@ var ( testSectResetStorDb, testSectStartEngine, testSectRPCConn, - //testSectConfigSReloadGeneral, + testSectConfigSReloadGeneral, testSectConfigSReloadCores, testSectConfigSReloadRPCConns, - //testSectConfigSReloadDataDB, - //testSectConfigSReloadStorDB, + testSectConfigSReloadStorDB, testSectConfigSReloadListen, testSectConfigSReloadTLS, testSectConfigSReloadHTTP, @@ -80,6 +79,7 @@ var ( testSectConfigSReloadTemplates, testSectConfigSReloadConfigs, testSectConfigSReloadAPIBan, + testSectConfigSReloadDataDB, testSectStopCgrEngine, } ) @@ -136,7 +136,6 @@ func testSectRPCConn(t *testing.T) { } func testSectConfigSReloadGeneral(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -146,7 +145,7 @@ func testSectConfigSReloadGeneral(t *testing.T) { } else if reply != utils.OK { t.Errorf("Expected OK received: %+v", reply) } - cfgStr := "{\"general\":{\"connect_attempts\":5,\"connect_timeout\":\"1s\",\"dbdata_encoding\":\"*msgpack\",\"default_caching\":\"*reload\",\"default_category\":\"call\",\"default_request_type\":\"*rated\",\"default_tenant\":\"cgrates.org\",\"default_timezone\":\"Local\",\"digest_equal\":\":\",\"digest_separator\":\",\",\"failed_posts_dir\":\"/var/spool/cgrates/failed_posts\",\"failed_posts_ttl\":\"5s\",\"locking_timeout\":\"0\",\"log_level\":7,\"logger\":\"*syslog\",\"max_parallel_conns\":100,\"node_id\":\"98ead14\",\"poster_attempts\":3,\"reconnects\":-1,\"reply_timeout\":\"50s\",\"rounding_decimals\":5,\"rsr_separator\":\";\",\"tpexport_dir\":\"/var/spool/cgrates/tpe\"}}" + cfgStr := "{\"general\":{\"connect_attempts\":5,\"connect_timeout\":\"1s\",\"dbdata_encoding\":\"*msgpack\",\"decimal_max_scale\":0,\"decimal_min_scale\":0,\"decimal_precision\":0,\"decimal_rounding_mode\":\"*toNearestEven\",\"default_caching\":\"*reload\",\"default_category\":\"call\",\"default_request_type\":\"*rated\",\"default_tenant\":\"cgrates.org\",\"default_timezone\":\"Local\",\"digest_equal\":\":\",\"digest_separator\":\",\",\"failed_posts_dir\":\"/var/spool/cgrates/failed_posts\",\"failed_posts_ttl\":\"5s\",\"locking_timeout\":\"0\",\"log_level\":7,\"logger\":\"*syslog\",\"max_parallel_conns\":100,\"node_id\":\"98ead14\",\"poster_attempts\":3,\"reconnects\":-1,\"reply_timeout\":\"50s\",\"rounding_decimals\":5,\"rsr_separator\":\";\",\"tpexport_dir\":\"/var/spool/cgrates/tpe\"}}" var rpl string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ Tenant: "cgrates.org", @@ -159,7 +158,6 @@ func testSectConfigSReloadGeneral(t *testing.T) { } func testSectConfigSReloadCores(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.CoreSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -196,7 +194,6 @@ func testSectConfigSReloadCores(t *testing.T) { } func testSectConfigSReloadRPCConns(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -219,17 +216,16 @@ func testSectConfigSReloadRPCConns(t *testing.T) { } func testSectConfigSReloadDataDB(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", - Config: "{\"data_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"10\",\"db_password\":\"\",\"db_port\":6379,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*account_action_plans\":{\"remote\":false,\"replicate\":false},\"*accounts\":{\"remote\":false,\"replicate\":false},\"*action_plans\":{\"remote\":false,\"replicate\":false},\"*action_triggers\":{\"remote\":false,\"replicate\":false},\"*actions\":{\"remote\":false,\"replicate\":false},\"*attribute_profiles\":{\"remote\":false,\"replicate\":false},\"*charger_profiles\":{\"remote\":false,\"replicate\":false},\"*destinations\":{\"remote\":false,\"replicate\":false},\"*dispatcher_hosts\":{\"remote\":false,\"replicate\":false},\"*dispatcher_profiles\":{\"remote\":false,\"replicate\":false},\"*filters\":{\"remote\":false,\"replicate\":false},\"*indexes\":{\"remote\":false,\"replicate\":false},\"*load_ids\":{\"remote\":false,\"replicate\":false},\"*rating_plans\":{\"remote\":false,\"replicate\":false},\"*rating_profiles\":{\"remote\":false,\"replicate\":false},\"*resource_profiles\":{\"remote\":false,\"replicate\":false},\"*resources\":{\"remote\":false,\"replicate\":false},\"*reverse_destinations\":{\"remote\":false,\"replicate\":false},\"*route_profiles\":{\"remote\":false,\"replicate\":false},\"*statqueues\":{\"remote\":false,\"replicate\":false},\"*threshold_profiles\":{\"remote\":false,\"replicate\":false},\"*thresholds\":{\"remote\":false,\"replicate\":false},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"redisCACertificate\":\"\",\"redisClientCertificate\":\"\",\"redisClientKey\":\"\",\"redisCluster\":false,\"redisClusterOndownDelay\":\"0\",\"redisClusterSync\":\"5s\",\"redisSentinel\":\"\",\"redisTLS\":false},\"remote_conn_id\":\"\",\"remote_conns\":[],\"replication_cache\":\"\",\"replication_conns\":[],\"replication_filtered\":false}}", + Config: "{\"data_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"10\",\"db_password\":\"\",\"db_port\":6379,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*account_action_plans\":{\"remote\":false,\"replicate\":false},\"*accounts\":{\"remote\":false,\"replicate\":false},\"*action_plans\":{\"remote\":false,\"replicate\":false},\"*action_triggers\":{\"remote\":false,\"replicate\":false},\"*actions\":{\"remote\":false,\"replicate\":false},\"*attribute_profiles\":{\"remote\":false,\"replicate\":false},\"*charger_profiles\":{\"remote\":false,\"replicate\":false},\"*destinations\":{\"remote\":false,\"replicate\":false},\"*dispatcher_hosts\":{\"remote\":false,\"replicate\":false},\"*dispatcher_profiles\":{\"remote\":false,\"replicate\":false},\"*filters\":{\"remote\":false,\"replicate\":false},\"*indexes\":{\"remote\":false,\"replicate\":false},\"*load_ids\":{\"remote\":false,\"replicate\":false},\"*rating_plans\":{\"remote\":false,\"replicate\":false},\"*rating_profiles\":{\"remote\":false,\"replicate\":false},\"*resource_profiles\":{\"remote\":false,\"replicate\":false},\"*resources\":{\"remote\":false,\"replicate\":false},\"*reverse_destinations\":{\"remote\":false,\"replicate\":false},\"*route_profiles\":{\"remote\":false,\"replicate\":false},\"*statqueues\":{\"remote\":false,\"replicate\":false},\"*threshold_profiles\":{\"remote\":false,\"replicate\":false},\"*thresholds\":{\"remote\":false,\"replicate\":false}},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"redisCACertificate\":\"\",\"redisClientCertificate\":\"\",\"redisClientKey\":\"\",\"redisCluster\":false,\"redisClusterOndownDelay\":\"0\",\"redisClusterSync\":\"5s\",\"redisSentinel\":\"\",\"redisTLS\":false},\"remote_conn_id\":\"\",\"remote_conns\":[],\"replication_cache\":\"\",\"replication_conns\":[],\"replication_filtered\":false}}", }, &reply); err != nil { t.Error(err) } else if reply != utils.OK { t.Errorf("Expected OK received: %+v", reply) } - cfgStr := "{\"data_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"10\",\"db_password\":\"\",\"db_port\":6379,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*account_action_plans\":{\"remote\":false,\"replicate\":false},\"*accounts\":{\"remote\":false,\"replicate\":false},\"*action_plans\":{\"remote\":false,\"replicate\":false},\"*action_triggers\":{\"remote\":false,\"replicate\":false},\"*actions\":{\"remote\":false,\"replicate\":false},\"*attribute_profiles\":{\"remote\":false,\"replicate\":false},\"*charger_profiles\":{\"remote\":false,\"replicate\":false},\"*destinations\":{\"remote\":false,\"replicate\":false},\"*dispatcher_hosts\":{\"remote\":false,\"replicate\":false},\"*dispatcher_profiles\":{\"remote\":false,\"replicate\":false},\"*filters\":{\"remote\":false,\"replicate\":false},\"*indexes\":{\"remote\":false,\"replicate\":false},\"*load_ids\":{\"remote\":false,\"replicate\":false},\"*rating_plans\":{\"remote\":false,\"replicate\":false},\"*rating_profiles\":{\"remote\":false,\"replicate\":false},\"*resource_profiles\":{\"remote\":false,\"replicate\":false},\"*resources\":{\"remote\":false,\"replicate\":false},\"*reverse_destinations\":{\"remote\":false,\"replicate\":false},\"*route_profiles\":{\"remote\":false,\"replicate\":false},\"*statqueue_profiles\":{\"remote\":false,\"replicate\":false},\"*statqueues\":{\"remote\":false,\"replicate\":false},\"*threshold_profiles\":{\"remote\":false,\"replicate\":false},\"*thresholds\":{\"remote\":false,\"replicate\":false},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"redisCACertificate\":\"\",\"redisClientCertificate\":\"\",\"redisClientKey\":\"\",\"redisCluster\":false,\"redisClusterOndownDelay\":\"0\",\"redisClusterSync\":\"5s\",\"redisSentinel\":\"\",\"redisTLS\":false},\"remote_conn_id\":\"\",\"remote_conns\":[],\"replication_cache\":\"\",\"replication_conns\":[],\"replication_filtered\":false}}" + cfgStr := "{\"data_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"10\",\"db_password\":\"\",\"db_port\":6379,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*account_action_plans\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*account_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*action_plans\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*action_triggers\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*actions\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*destinations\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*rating_plans\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*rating_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_destinations\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_filter_indexes\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*versions\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false}},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"redisCACertificate\":\"\",\"redisClientCertificate\":\"\",\"redisClientKey\":\"\",\"redisCluster\":false,\"redisClusterOndownDelay\":\"0s\",\"redisClusterSync\":\"5s\",\"redisSentinel\":\"\",\"redisTLS\":false},\"remote_conn_id\":\"\",\"remote_conns\":[],\"replication_cache\":\"\",\"replication_conns\":[],\"replication_filtered\":false}}" var rpl string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ Tenant: "cgrates.org", @@ -242,17 +238,16 @@ func testSectConfigSReloadDataDB(t *testing.T) { } func testSectConfigSReloadStorDB(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", - Config: "{\"stor_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"cgrates\",\"db_password\":\"CGRateS.org\",\"db_port\":3306,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*cdrs\":{\"remote\":false,\"replicate\":false},\"*session_costs\":{\"remote\":false,\"replicate\":false},\"*tp_account_actions\":{\"remote\":false,\"replicate\":false},\"*tp_action_plans\":{\"remote\":false,\"replicate\":false},\"*tp_action_triggers\":{\"remote\":false,\"replicate\":false},\"*tp_actions\":{\"remote\":false,\"replicate\":false},\"*tp_attributes\":{\"remote\":false,\"replicate\":false},\"*tp_chargers\":{\"remote\":false,\"replicate\":false},\"*tp_destination_rates\":{\"remote\":false,\"replicate\":false},\"*tp_destinations\":{\"remote\":false,\"replicate\":false},\"*tp_dispatcher_hosts\":{\"remote\":false,\"replicate\":false},\"*tp_dispatcher_profiles\":{\"remote\":false,\"replicate\":false},\"*tp_filters\":{\"remote\":false,\"replicate\":false},\"*tp_rates\":{\"remote\":false,\"replicate\":false},\"*tp_rating_plans\":{\"remote\":false,\"replicate\":false},\"*tp_resources\":{\"remote\":false,\"replicate\":false},\"*tp_routes\":{\"remote\":false,\"replicate\":false},\"*tp_stats\":{\"remote\":false,\"replicate\":false},\"*tp_thresholds\":{\"remote\":false,\"replicate\":false},\"*tp_timings\":{\"remote\":false,\"replicate\":false},\"*versions\":{\"remote\":false,\"replicate\":false}},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"mysqlLocation\":\"Local\",\"postgresSSLMode\":\"disable\",\"sqlConnMaxLifetime\":0,\"sqlMaxIdleConns\":10,\"sqlMaxOpenConns\":100},\"prefix_indexed_fields\":[],\"remote_conns\":null,\"replication_conns\":null,\"string_indexed_fields\":[]}}", + Config: "{\"stor_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"cgrates\",\"db_password\":\"CGRateS.org\",\"db_port\":3306,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*cdrs\":{\"remote\":false,\"replicate\":false},\"*session_costs\":{\"remote\":false,\"replicate\":false},\"*tp_account_actions\":{\"remote\":false,\"replicate\":false},\"*tp_action_plans\":{\"remote\":false,\"replicate\":false},\"*tp_action_triggers\":{\"remote\":false,\"replicate\":false},\"*tp_actions\":{\"remote\":false,\"replicate\":false},\"*tp_attributes\":{\"remote\":false,\"replicate\":false},\"*tp_chargers\":{\"remote\":false,\"replicate\":false},\"*tp_destination_rates\":{\"remote\":false,\"replicate\":false},\"*tp_destinations\":{\"remote\":false,\"replicate\":false},\"*tp_dispatcher_hosts\":{\"remote\":false,\"replicate\":false},\"*tp_dispatcher_profiles\":{\"remote\":false,\"replicate\":false},\"*tp_filters\":{\"remote\":false,\"replicate\":false},\"*tp_rates\":{\"remote\":false,\"replicate\":false},\"*tp_rating_plans\":{\"remote\":false,\"replicate\":false},\"*tp_resources\":{\"remote\":false,\"replicate\":false},\"*tp_routes\":{\"remote\":false,\"replicate\":false},\"*tp_stats\":{\"remote\":false,\"replicate\":false},\"*tp_thresholds\":{\"remote\":false,\"replicate\":false},\"*tp_timings\":{\"remote\":false,\"replicate\":false},\"*versions\":{\"remote\":false,\"replicate\":false}},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"mysqlLocation\":\"Local\",\"postgresSSLMode\":\"disable\",\"sqlConnMaxLifetime\":\"0\",\"sqlMaxIdleConns\":10,\"sqlMaxOpenConns\":100},\"prefix_indexed_fields\":[],\"remote_conns\":null,\"replication_conns\":null,\"string_indexed_fields\":[]}}", }, &reply); err != nil { t.Error(err) } else if reply != utils.OK { t.Errorf("Expected OK received: %+v", reply) } - cfgStr := "{\"stor_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"cgrates\",\"db_password\":\"CGRateS.org\",\"db_port\":3306,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*cdrs\":{\"remote\":false,\"replicate\":false},\"*session_costs\":{\"remote\":false,\"replicate\":false},\"*tp_account_actions\":{\"remote\":false,\"replicate\":false},\"*tp_action_plans\":{\"remote\":false,\"replicate\":false},\"*tp_action_triggers\":{\"remote\":false,\"replicate\":false},\"*tp_actions\":{\"remote\":false,\"replicate\":false},\"*tp_attributes\":{\"remote\":false,\"replicate\":false},\"*tp_chargers\":{\"remote\":false,\"replicate\":false},\"*tp_destination_rates\":{\"remote\":false,\"replicate\":false},\"*tp_destinations\":{\"remote\":false,\"replicate\":false},\"*tp_dispatcher_hosts\":{\"remote\":false,\"replicate\":false},\"*tp_dispatcher_profiles\":{\"remote\":false,\"replicate\":false},\"*tp_filters\":{\"remote\":false,\"replicate\":false},\"*tp_rates\":{\"remote\":false,\"replicate\":false},\"*tp_rating_plans\":{\"remote\":false,\"replicate\":false},\"*tp_resources\":{\"remote\":false,\"replicate\":false},\"*tp_routes\":{\"remote\":false,\"replicate\":false},\"*tp_stats\":{\"remote\":false,\"replicate\":false},\"*tp_thresholds\":{\"remote\":false,\"replicate\":false},\"*tp_timings\":{\"remote\":false,\"replicate\":false},\"*versions\":{\"remote\":false,\"replicate\":false}},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"mysqlLocation\":\"Local\",\"postgresSSLMode\":\"disable\",\"sqlConnMaxLifetime\":0,\"sqlMaxIdleConns\":10,\"sqlMaxOpenConns\":100},\"prefix_indexed_fields\":[],\"remote_conns\":null,\"replication_conns\":null,\"string_indexed_fields\":[]}}" + cfgStr := "{\"stor_db\":{\"db_host\":\"127.0.0.1\",\"db_name\":\"cgrates\",\"db_password\":\"CGRateS.org\",\"db_port\":3306,\"db_type\":\"*internal\",\"db_user\":\"cgrates\",\"items\":{\"*cdrs\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*session_costs\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_account_actions\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_accounts\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_action_plans\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_action_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_action_triggers\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_actions\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_destination_rates\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_destinations\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_rate_profiles\":{\"limit\":-1,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_rates\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_rating_plans\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_timings\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false},\"*versions\":{\"limit\":0,\"remote\":false,\"replicate\":false,\"static_ttl\":false}},\"opts\":{\"mongoQueryTimeout\":\"10s\",\"mysqlLocation\":\"Local\",\"sqlConnMaxLifetime\":\"0s\",\"sqlMaxIdleConns\":10,\"sqlMaxOpenConns\":100,\"sslMode\":\"disable\"},\"prefix_indexed_fields\":[],\"remote_conns\":null,\"replication_conns\":null,\"string_indexed_fields\":[]}}" var rpl string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ Tenant: "cgrates.org", @@ -265,7 +260,6 @@ func testSectConfigSReloadStorDB(t *testing.T) { } func testSectConfigSReloadListen(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -288,7 +282,6 @@ func testSectConfigSReloadListen(t *testing.T) { } func testSectConfigSReloadTLS(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -311,7 +304,6 @@ func testSectConfigSReloadTLS(t *testing.T) { } func testSectConfigSReloadHTTP(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -341,69 +333,25 @@ func testSectConfigSReloadCaches(t *testing.T) { t.Errorf("Expected OK received: %s", replyPingBf) } - if testSectCfgDir == "tutmysql" { - var reply string - if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ - Tenant: "cgrates.org", - Config: "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*cdrs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*session_costs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*versions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false}},\"replication_conns\":[]}}", - }, &reply); err != nil { - t.Error(err) - } else if reply != utils.OK { - t.Errorf("Expected OK received: %+v", reply) - } - cfgStr := "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*cdrs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*session_costs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*versions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false}},\"replication_conns\":[]}}" - var rpl string - if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ - Tenant: "cgrates.org", - Sections: []string{config.CacheJSON}, - }, &rpl); err != nil { - t.Error(err) - } else if cfgStr != rpl { - t.Errorf("\nExpected %+v ,\n received: %+v", utils.ToIJSON(cfgStr), utils.ToIJSON(rpl)) - } - } else if testSectCfgDir == "tutmongo" { - var reply string - if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ - Tenant: "cgrates.org", - Config: "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*cdrs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*session_costs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*versions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false}},\"replication_conns\":[]}}", - }, &reply); err != nil { - t.Error(err) - } else if reply != utils.OK { - t.Errorf("Expected OK received: %+v", reply) - } - cfgStr := "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*cdrs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*session_costs\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*versions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false}},\"replication_conns\":[]}}" - var rpl string - if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ - Tenant: "cgrates.org", - Sections: []string{config.CacheJSON}, - }, &rpl); err != nil { - t.Error(err) - } else if cfgStr != rpl { - t.Errorf("\nExpected %+v ,\n received: %+v", utils.ToIJSON(cfgStr), utils.ToIJSON(rpl)) - } - } else if testSectCfgDir == "tutinternal" { - - var reply string - if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ - Tenant: "cgrates.org", - Config: "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*cdrs\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*session_costs\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*versions\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false}},\"replication_conns\":[]}}", - }, &reply); err != nil { - t.Error(err) - } else if reply != utils.OK { - t.Errorf("Expected OK received: %+v", reply) - } - cfgStr := "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*cdrs\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*session_costs\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stat_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_attributes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_chargers\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_dispatcher_profiles\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_filters\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_resources\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_routes\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_stats\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*tp_thresholds\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*versions\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false}},\"replication_conns\":[]}}" - var rpl string - if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ - Tenant: "cgrates.org", - Sections: []string{config.CacheJSON}, - }, &rpl); err != nil { - t.Error(err) - } else if cfgStr != rpl { - t.Errorf("\nExpected %+v ,\n received: %+v", utils.ToIJSON(cfgStr), utils.ToIJSON(rpl)) - } + var reply string + if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ + Tenant: "cgrates.org", + Config: "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*charger_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*stat_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"}},\"replication_conns\":[]}}", + }, &reply); err != nil { + t.Error(err) + } else if reply != utils.OK { + t.Errorf("Expected OK received: %+v", reply) + } + cfgStr := "{\"caches\":{\"partitions\":{\"*account_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*accounts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*action_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*apiban\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2m0s\"},\"*attribute_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*attribute_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*caps_events\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*cdr_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10m0s\"},\"*charger_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*charger_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*closed_sessions\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*diameter_messages\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*dispatcher_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_hosts\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_loads\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatcher_routes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*dispatchers\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*event_charges\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"10s\"},\"*event_resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*filters\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*load_ids\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profile_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rate_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*replication_hosts\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resource_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*resources\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*reverse_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*route_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_connections\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*rpc_responses\":{\"limit\":0,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"2s\"},\"*stat_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueue_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*statqueues\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*stir\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"},\"*threshold_filter_indexes\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*threshold_profiles\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*thresholds\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false},\"*uch\":{\"limit\":-1,\"precache\":false,\"replicate\":false,\"static_ttl\":false,\"ttl\":\"3h0m0s\"}},\"replication_conns\":[]}}" + var rpl string + if err := testSectRPC.Call(context.Background(), utils.ConfigSv1GetConfigAsJSON, &config.SectionWithAPIOpts{ + Tenant: "cgrates.org", + Sections: []string{config.CacheJSON}, + }, &rpl); err != nil { + t.Error(err) + } else if cfgStr != rpl { + t.Errorf("\nExpected %+v ,\n received: %+v", utils.ToIJSON(cfgStr), utils.ToIJSON(rpl)) } - var replyPingAf string if err := testSectRPC.Call(context.Background(), utils.CacheSv1Ping, &utils.CGREvent{}, &replyPingAf); err != nil { t.Error(err) @@ -413,7 +361,6 @@ func testSectConfigSReloadCaches(t *testing.T) { } func testSectConfigSReloadFilters(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -436,7 +383,6 @@ func testSectConfigSReloadFilters(t *testing.T) { } func testSectConfigSReloadCDRS(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.CDRsV1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -473,7 +419,6 @@ func testSectConfigSReloadCDRS(t *testing.T) { } func testSectConfigSReloadERS(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -496,7 +441,6 @@ func testSectConfigSReloadERS(t *testing.T) { } func testSectConfigSReloadEES(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -542,7 +486,6 @@ func testSectConfigSReloadSessions(t *testing.T) { } func testSectConfigSReloadAsteriskAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -565,7 +508,6 @@ func testSectConfigSReloadAsteriskAgent(t *testing.T) { } func testSectConfigSReloadFreeswitchAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -588,7 +530,6 @@ func testSectConfigSReloadFreeswitchAgent(t *testing.T) { } func testSectConfigSReloadKamailioAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -611,7 +552,6 @@ func testSectConfigSReloadKamailioAgent(t *testing.T) { } func testSectConfigSReloadDiameterAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -634,7 +574,6 @@ func testSectConfigSReloadDiameterAgent(t *testing.T) { } func testSectConfigSReloadHTTPAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -657,7 +596,6 @@ func testSectConfigSReloadHTTPAgent(t *testing.T) { } func testSectConfigSReloadDNSAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -680,7 +618,6 @@ func testSectConfigSReloadDNSAgent(t *testing.T) { } func testSectConfigSReloadAttributes(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.AttributeSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -718,7 +655,6 @@ func testSectConfigSReloadAttributes(t *testing.T) { } func testSectConfigSReloadChargers(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.ChargerSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -755,7 +691,6 @@ func testSectConfigSReloadChargers(t *testing.T) { } func testSectConfigSReloadResources(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.ResourceSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -792,7 +727,6 @@ func testSectConfigSReloadResources(t *testing.T) { } func testSectConfigSReloadStats(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.StatSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -829,7 +763,6 @@ func testSectConfigSReloadStats(t *testing.T) { } func testSectConfigSReloadThresholds(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.ThresholdSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -866,7 +799,6 @@ func testSectConfigSReloadThresholds(t *testing.T) { } func testSectConfigSReloadRoutes(t *testing.T) { - var replyPingBf string if err := testSectRPC.Call(context.Background(), utils.RouteSv1Ping, &utils.CGREvent{}, &replyPingBf); err != nil { t.Error(err) @@ -903,7 +835,6 @@ func testSectConfigSReloadRoutes(t *testing.T) { } func testSectConfigSReloadLoaders(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1ReloadConfig, &config.ReloadArgs{ Tenant: "cgrates.org", @@ -926,7 +857,6 @@ func testSectConfigSReloadLoaders(t *testing.T) { } func testSectConfigSReloadSuretax(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -949,7 +879,6 @@ func testSectConfigSReloadSuretax(t *testing.T) { } func testSectConfigSReloadLoader(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -972,7 +901,6 @@ func testSectConfigSReloadLoader(t *testing.T) { } func testSectConfigSReloadMigrator(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -995,7 +923,6 @@ func testSectConfigSReloadMigrator(t *testing.T) { } func testSectConfigSReloadDispatchers(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -1018,7 +945,6 @@ func testSectConfigSReloadDispatchers(t *testing.T) { } func testSectConfigSReloadRegistrarC(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -1063,7 +989,6 @@ func testSectConfigSReloadAnalyzer(t *testing.T) { } func testSectConfigSReloadSIPAgent(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -1086,7 +1011,6 @@ func testSectConfigSReloadSIPAgent(t *testing.T) { } func testSectConfigSReloadTemplates(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", @@ -1109,7 +1033,6 @@ func testSectConfigSReloadTemplates(t *testing.T) { } func testSectConfigSReloadConfigs(t *testing.T) { - var reply string if err := testSectRPC.Call(context.Background(), utils.ConfigSv1SetConfigFromJSON, &config.SetConfigFromJSONArgs{ Tenant: "cgrates.org", diff --git a/integration_test.sh b/integration_test.sh index 963206aaa..f8ba7b172 100755 --- a/integration_test.sh +++ b/integration_test.sh @@ -20,21 +20,21 @@ results+=($?) echo "go test github.com/cgrates/cgrates/loaders -tags=integration $@" go test github.com/cgrates/cgrates/loaders -tags=integration $@ results+=($?) -# echo "go test github.com/cgrates/cgrates/general_tests -tags=integration $@" -# go test github.com/cgrates/cgrates/general_tests -tags=integration $@ -# results+=($?) +echo "go test github.com/cgrates/cgrates/general_tests -tags=integration $@" +go test github.com/cgrates/cgrates/general_tests -tags=integration $@ +results+=($?) # echo "go test github.com/cgrates/cgrates/agents -tags=integration $@" # go test github.com/cgrates/cgrates/agents -tags=integration $@ # results+=($?) # echo "go test github.com/cgrates/cgrates/sessions -tags=integration $@" # go test github.com/cgrates/cgrates/sessions -tags=integration $@ # results+=($?) -# echo "go test github.com/cgrates/cgrates/dispatchers -tags=integration $@" -# go test github.com/cgrates/cgrates/dispatchers -tags=integration $@ -# results+=($?) -# echo "go test github.com/cgrates/cgrates/registrarc -tags=integration $@" -# go test github.com/cgrates/cgrates/registrarc -tags=integration $@ -# results+=($?) +echo "go test github.com/cgrates/cgrates/dispatchers -tags=integration $@" +go test github.com/cgrates/cgrates/dispatchers -tags=integration $@ +results+=($?) +echo "go test github.com/cgrates/cgrates/registrarc -tags=integration $@" +go test github.com/cgrates/cgrates/registrarc -tags=integration $@ +results+=($?) echo "go test github.com/cgrates/cgrates/cmd/cgr-loader -tags=integration $@" go test github.com/cgrates/cgrates/cmd/cgr-loader -tags=integration $@ results+=($?) @@ -169,12 +169,12 @@ results+=($?) echo 'go test github.com/cgrates/cgrates/cores -tags=integration' go test github.com/cgrates/cgrates/cores -tags=integration results+=($?) -echo 'go test github.com/cgrates/cgrates/migrator -tags=integration' -go test github.com/cgrates/cgrates/migrator -tags=integration -results+=($?) -echo 'go test github.com/cgrates/cgrates/services -tags=integration' -go test github.com/cgrates/cgrates/services -tags=integration -results+=($?) +# echo 'go test github.com/cgrates/cgrates/migrator -tags=integration' +# go test github.com/cgrates/cgrates/migrator -tags=integration +# results+=($?) +# echo 'go test github.com/cgrates/cgrates/services -tags=integration' +# go test github.com/cgrates/cgrates/services -tags=integration +# results+=($?) pass=1 diff --git a/registrarc/lib_test.go b/registrarc/lib_test.go index f60a86188..c99378ff5 100644 --- a/registrarc/lib_test.go +++ b/registrarc/lib_test.go @@ -20,9 +20,9 @@ package registrarc import ( "errors" "flag" - "net/rpc" - "net/rpc/jsonrpc" + "github.com/cgrates/birpc" + "github.com/cgrates/birpc/jsonrpc" "github.com/cgrates/cgrates/config" "github.com/cgrates/cgrates/utils" ) @@ -34,12 +34,12 @@ var ( dbType = flag.String("dbtype", utils.MetaInternal, "The type of DataBase (Internal/Mongo/mySql)") ) -func newRPCClient(cfg *config.ListenCfg) (c *rpc.Client, err error) { +func newRPCClient(cfg *config.ListenCfg) (c *birpc.Client, err error) { switch *encoding { case utils.MetaJSON: return jsonrpc.Dial(utils.TCP, cfg.RPCJSONListen) case utils.MetaGOB: - return rpc.Dial(utils.TCP, cfg.RPCGOBListen) + return birpc.Dial(utils.TCP, cfg.RPCGOBListen) default: return nil, errors.New("UNSUPPORTED_RPC") } diff --git a/registrarc/registrarc_it_test.go b/registrarc/registrarc_it_test.go index 7b372cdc6..753f3c698 100644 --- a/registrarc/registrarc_it_test.go +++ b/registrarc/registrarc_it_test.go @@ -23,12 +23,12 @@ package registrarc import ( "bytes" - "net/rpc" "os/exec" "path" "testing" "time" + "github.com/cgrates/birpc" "github.com/cgrates/birpc/context" "github.com/cgrates/cgrates/config" "github.com/cgrates/cgrates/engine" @@ -40,7 +40,7 @@ var ( dspCfgPath string dspCfg *config.CGRConfig dspCmd *exec.Cmd - dspRPC *rpc.Client + dspRPC *birpc.Client allDir string allCfgPath string @@ -129,7 +129,7 @@ func testDsphLoadData(t *testing.T) { func testDsphGetNodeID() (id string, err error) { var status map[string]interface{} - if err = dspRPC.Call(utils.CoreSv1Status, utils.TenantWithAPIOpts{ + if err = dspRPC.Call(context.Background(), utils.CoreSv1Status, utils.TenantWithAPIOpts{ Tenant: "cgrates.org", APIOpts: map[string]interface{}{}, }, &status); err != nil { diff --git a/registrarc/registrarcrpc_it_test.go b/registrarc/registrarcrpc_it_test.go index 9892052dc..a118636f1 100644 --- a/registrarc/registrarcrpc_it_test.go +++ b/registrarc/registrarcrpc_it_test.go @@ -22,7 +22,6 @@ along with this program. If not, see package registrarc import ( - "net/rpc" "os/exec" "path" "reflect" @@ -31,9 +30,11 @@ import ( "testing" "time" + "github.com/cgrates/birpc" "github.com/cgrates/birpc/context" "github.com/cgrates/cgrates/config" "github.com/cgrates/cgrates/engine" + "github.com/cgrates/cgrates/loaders" "github.com/cgrates/cgrates/utils" "github.com/cgrates/rpcclient" ) @@ -46,7 +47,7 @@ var ( rpcsDir string rpcsCfgPath string rpcsCfg *config.CGRConfig - rpcsRPC *rpc.Client + rpcsRPC *birpc.Client rpchTest = []func(t *testing.T){ testRPCInitCfg, @@ -111,9 +112,12 @@ func testRPCStartEngine(t *testing.T) { func testRPCLoadData(t *testing.T) { var reply string - attrs := &utils.AttrLoadTpFromFolder{FolderPath: path.Join(*dataDir, "tariffplans", "testit")} - if err := rpcsRPC.Call(utils.APIerSv1LoadTariffPlanFromFolder, attrs, &reply); err != nil { + if err := rpcsRPC.Call(context.Background(), utils.LoaderSv1Run, &loaders.ArgsProcessFolder{ + APIOpts: map[string]interface{}{utils.MetaCache: utils.MetaReload}, + }, &reply); err != nil { t.Error(err) + } else if reply != utils.OK { + t.Error("Unexpected reply returned", reply) } time.Sleep(100 * time.Millisecond) } @@ -128,7 +132,7 @@ func testRPCChargerSNoAttr(t *testing.T) { } expErr := utils.NewErrServerError(rpcclient.ErrDisconnected).Error() var rply []*engine.ChrgSProcessEventReply - if err := rpcsRPC.Call(utils.ChargerSv1ProcessEvent, cgrEv, &rply); err == nil || err.Error() != expErr { + if err := rpcsRPC.Call(context.Background(), utils.ChargerSv1ProcessEvent, cgrEv, &rply); err == nil || err.Error() != expErr { t.Errorf("Expected error: %s,received: %v", expErr, err) } } @@ -153,54 +157,58 @@ func testRPCChargerSWithAttr(t *testing.T) { processedEv := []*engine.ChrgSProcessEventReply{ { ChargerSProfile: "CustomerCharges", - AlteredFields: []string{"*req.RunID"}, + AlteredFields: []string{"*opts.*runID"}, CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", Event: map[string]interface{}{ "Account": "1010", - "RunID": "CustomerCharges", }, APIOpts: map[string]interface{}{ - "*processRuns": 1., - "*subsys": "*chargers", + "*attrProcessRuns": 1., + "*subsys": "*chargers", + "*runID": "CustomerCharges", }, }, }, { ChargerSProfile: "Raw", AttributeSProfiles: []string{"*constant:*req.RequestType:*none"}, - AlteredFields: []string{"*req.RunID", "*req.RequestType"}, + AlteredFields: []string{"*opts.*runID", "*req.RequestType"}, CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", Event: map[string]interface{}{ "Account": "1010", "RequestType": "*none", - "RunID": "raw", }, APIOpts: map[string]interface{}{ - "*processRuns": 1., - "*subsys": "*chargers", + "*attrProcessRuns": 1., + "*subsys": "*chargers", + "*runID": "raw", + "*attrProfileIDs": []interface{}{"*constant:*req.RequestType:*none"}, + "*context": "*chargers", }, }, }, { ChargerSProfile: "SupplierCharges", AttributeSProfiles: []string{"cgrates.org:ATTR_SUPPLIER1"}, - AlteredFields: []string{"*req.RunID", "*req.Subject"}, + AlteredFields: []string{"*opts.*runID", "*req.Subject"}, CGREvent: &utils.CGREvent{ Tenant: "cgrates.org", Event: map[string]interface{}{ "Account": "1010", - "RunID": "SupplierCharges", "Subject": "SUPPLIER1", }, APIOpts: map[string]interface{}{ - "*processRuns": 1., - "*subsys": "*chargers", + "*attrProcessRuns": 1., + "*subsys": "*chargers", + "*runID": "SupplierCharges", + "*attrProfileIDs": []interface{}{"ATTR_SUPPLIER1"}, + "*context": "*chargers", }, }, }, } var rply []*engine.ChrgSProcessEventReply - if err := rpcsRPC.Call(utils.ChargerSv1ProcessEvent, cgrEv, &rply); err != nil { + if err := rpcsRPC.Call(context.Background(), utils.ChargerSv1ProcessEvent, cgrEv, &rply); err != nil { t.Fatal(err) } sort.Slice(rply, func(i, j int) bool {