From 6629dc6bee142f97997106d76d0c2ba4dc7067fb Mon Sep 17 00:00:00 2001 From: adragusin Date: Fri, 3 Apr 2020 15:15:31 +0300 Subject: [PATCH] Reverted RoundingDecimals --- config/cdrecfg.go | 4 +- config/cdrecfg_test.go | 6 +- config/config.go | 14 +- config/config_defaults.go | 2 +- config/config_it_test.go | 46 +- config/config_test.go | 856 +++++++++++++++-------------------- config/diametercfg.go | 6 +- config/diametercfg_test.go | 6 +- config/dnsagentcfg_test.go | 12 +- config/dnsagntcfg.go | 10 +- config/erscfg.go | 14 +- config/erscfg_test.go | 68 +-- config/fctemplate.go | 7 +- config/fctemplate_test.go | 70 +-- config/httpagntcfg.go | 12 +- config/httpagntcfg_test.go | 16 +- config/loaderscfg.go | 8 +- config/loaderscfg_test.go | 6 +- config/radiuscfg.go | 4 +- config/radiuscfg_test.go | 6 +- docs/ers.rst | 2 +- engine/cdrefwv_test.go | 2 +- sessions/sessions_it_test.go | 4 +- 23 files changed, 503 insertions(+), 678 deletions(-) diff --git a/config/cdrecfg.go b/config/cdrecfg.go index fb29878d5..7e4537b28 100644 --- a/config/cdrecfg.go +++ b/config/cdrecfg.go @@ -31,7 +31,7 @@ type CdreCfg struct { Fields []*FCTemplate } -func (self *CdreCfg) loadFromJsonCfg(jsnCfg *CdreJsonCfg, separator string, rounding int) (err error) { +func (self *CdreCfg) loadFromJsonCfg(jsnCfg *CdreJsonCfg, separator string) (err error) { if jsnCfg == nil { return nil } @@ -64,7 +64,7 @@ func (self *CdreCfg) loadFromJsonCfg(jsnCfg *CdreJsonCfg, separator string, roun self.FieldSeparator = rune(sepStr[0]) } if jsnCfg.Fields != nil { - if self.Fields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Fields, separator, rounding); err != nil { + if self.Fields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Fields, separator); err != nil { return err } } diff --git a/config/cdrecfg_test.go b/config/cdrecfg_test.go index d58d07564..c6bf8884a 100644 --- a/config/cdrecfg_test.go +++ b/config/cdrecfg_test.go @@ -81,12 +81,12 @@ func TestCdreCfgClone(t *testing.T) { func TestCdreCfgloadFromJsonCfg(t *testing.T) { var lstcfg, expected CdreCfg - if err := lstcfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 0); err != nil { + if err := lstcfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(lstcfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, lstcfg) } - if err := lstcfg.loadFromJsonCfg(new(CdreJsonCfg), utils.INFIELD_SEP, 0); err != nil { + if err := lstcfg.loadFromJsonCfg(new(CdreJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(lstcfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, lstcfg) @@ -129,7 +129,7 @@ func TestCdreCfgloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnCdreCfg, err := jsnCfg.CdreJsonCfgs(); err != nil { t.Error(err) - } else if err = lstcfg.loadFromJsonCfg(jsnCdreCfg[utils.MetaDefault], utils.INFIELD_SEP, 0); err != nil { + } else if err = lstcfg.loadFromJsonCfg(jsnCdreCfg[utils.MetaDefault], utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, lstcfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(lstcfg)) diff --git a/config/config.go b/config/config.go index 5f66c2e06..012a53a12 100755 --- a/config/config.go +++ b/config/config.go @@ -523,7 +523,7 @@ func (cfg *CGRConfig) loadCdreCfg(jsnCfg *CgrJsonCfg) (err error) { cfg.CdreProfiles[profileName] = cfg.dfltCdreProfile.Clone() // Clone default so we do not inherit pointers } } - if err = cfg.CdreProfiles[profileName].loadFromJsonCfg(jsnCdre1Cfg, cfg.generalCfg.RSRSep, cfg.generalCfg.RoundingDecimals); err != nil { // Update the existing profile with content from json config + if err = cfg.CdreProfiles[profileName].loadFromJsonCfg(jsnCdre1Cfg, cfg.generalCfg.RSRSep); err != nil { // Update the existing profile with content from json config return } } @@ -573,7 +573,7 @@ func (cfg *CGRConfig) loadDiameterAgentCfg(jsnCfg *CgrJsonCfg) (err error) { if jsnDACfg, err = jsnCfg.DiameterAgentJsonCfg(); err != nil { return } - return cfg.diameterAgentCfg.loadFromJsonCfg(jsnDACfg, cfg.generalCfg.RSRSep, cfg.generalCfg.RoundingDecimals) + return cfg.diameterAgentCfg.loadFromJsonCfg(jsnDACfg, cfg.generalCfg.RSRSep) } // loadRadiusAgentCfg loads the RadiusAgent section of the configuration @@ -582,7 +582,7 @@ func (cfg *CGRConfig) loadRadiusAgentCfg(jsnCfg *CgrJsonCfg) (err error) { if jsnRACfg, err = jsnCfg.RadiusAgentJsonCfg(); err != nil { return } - return cfg.radiusAgentCfg.loadFromJsonCfg(jsnRACfg, cfg.generalCfg.RSRSep, cfg.generalCfg.RoundingDecimals) + return cfg.radiusAgentCfg.loadFromJsonCfg(jsnRACfg, cfg.generalCfg.RSRSep) } // loadDNSAgentCfg loads the DNSAgent section of the configuration @@ -591,7 +591,7 @@ func (cfg *CGRConfig) loadDNSAgentCfg(jsnCfg *CgrJsonCfg) (err error) { if jsnDNSCfg, err = jsnCfg.DNSAgentJsonCfg(); err != nil { return } - return cfg.dnsAgentCfg.loadFromJsonCfg(jsnDNSCfg, cfg.generalCfg.RSRSep, cfg.generalCfg.RoundingDecimals) + return cfg.dnsAgentCfg.loadFromJsonCfg(jsnDNSCfg, cfg.generalCfg.RSRSep) } // loadHttpAgentCfg loads the HttpAgent section of the configuration @@ -600,7 +600,7 @@ func (cfg *CGRConfig) loadHttpAgentCfg(jsnCfg *CgrJsonCfg) (err error) { if jsnHttpAgntCfg, err = jsnCfg.HttpAgentJsonCfg(); err != nil { return } - return cfg.httpAgentCfg.loadFromJsonCfg(jsnHttpAgntCfg, cfg.generalCfg.RSRSep, cfg.generalCfg.RoundingDecimals) + return cfg.httpAgentCfg.loadFromJsonCfg(jsnHttpAgntCfg, cfg.generalCfg.RSRSep) } // loadAttributeSCfg loads the AttributeS section of the configuration @@ -667,7 +667,7 @@ func (cfg *CGRConfig) loadLoaderSCfg(jsnCfg *CgrJsonCfg) (err error) { // cfg.loaderCfg = make(LoaderSCfgs, len(jsnLoaderCfg)) for _, profile := range jsnLoaderCfg { loadSCfgp := NewDfltLoaderSCfg() - loadSCfgp.loadFromJsonCfg(profile, cfg.generalCfg.RSRSep, cfg.generalCfg.RoundingDecimals) + loadSCfgp.loadFromJsonCfg(profile, cfg.generalCfg.RSRSep) cfg.loaderCfg = append(cfg.loaderCfg, loadSCfgp) // use apend so the loaderS profile to be loaded from multiple files } } @@ -752,7 +752,7 @@ func (cfg *CGRConfig) loadErsCfg(jsnCfg *CgrJsonCfg) (err error) { if jsnERsCfg, err = jsnCfg.ERsJsonCfg(); err != nil { return } - return cfg.ersCfg.loadFromJsonCfg(jsnERsCfg, cfg.generalCfg.RSRSep, cfg.dfltEvRdr, cfg.generalCfg.RoundingDecimals) + return cfg.ersCfg.loadFromJsonCfg(jsnERsCfg, cfg.generalCfg.RSRSep, cfg.dfltEvRdr) } // SureTaxCfg use locking to retrieve the configuration, possibility later for runtime reload diff --git a/config/config_defaults.go b/config/config_defaults.go index 07c1e3e37..9b3ea5755 100755 --- a/config/config_defaults.go +++ b/config/config_defaults.go @@ -306,7 +306,7 @@ const CGRATES_CFG_JSON = ` "type": "*file_csv", // reader type <*file_csv> "row_length" : 0, // Number of fields from csv file "field_separator": ",", // separator used in case of csv files - "run_delay": "0", // sleep interval in seconds between consecutive runs, -1 to use automation via inotify or 0 to disable running all together + "run_delay": "0", // sleep interval in seconds between consecutive runs, -1 to use automation via inotify or 0 to disable running all together "concurrent_requests": 1024, // maximum simultaneous requests/files to process, 0 for unlimited "source_path": "/var/spool/cgrates/cdrc/in", // read data from this path "processed_path": "/var/spool/cgrates/cdrc/out", // move processed data here diff --git a/config/config_it_test.go b/config/config_it_test.go index c4666da60..4e550e739 100644 --- a/config/config_it_test.go +++ b/config/config_it_test.go @@ -430,17 +430,17 @@ func testCGRConfigReloadERs(t *testing.T) { flags, _ := utils.FlagsWithParamsFromSlice([]string{"*dryrun"}) flagsDefault, _ := utils.FlagsWithParamsFromSlice([]string{}) content := []*FCTemplate{ - &FCTemplate{Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, - &FCTemplate{Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + &FCTemplate{Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true}, + &FCTemplate{Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true}, } expAttr := &ERsCfg{ Enabled: true, @@ -566,7 +566,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "ToR", "Timezone": "", @@ -591,7 +591,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "OriginID", "Timezone": "", @@ -616,7 +616,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "RequestType", "Timezone": "", @@ -641,7 +641,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "Tenant", "Timezone": "", @@ -666,7 +666,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "Category", "Timezone": "", @@ -691,7 +691,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "Account", "Timezone": "", @@ -716,7 +716,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "Subject", "Timezone": "", @@ -741,7 +741,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "Destination", "Timezone": "", @@ -766,7 +766,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "SetupTime", "Timezone": "", @@ -791,7 +791,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "AnswerTime", "Timezone": "", @@ -816,7 +816,7 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "MaskLen": 0, "NewBranch": false, "Padding": "", - "RoundingDecimals": 5, + "RoundingDecimals": 0, "Strip": "", "Tag": "Usage", "Timezone": "", @@ -844,7 +844,6 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "FailedCallsPrefix": "", "ID": "*default", "ProcessedPath": "/var/spool/cgrates/cdrc/out", - "RowLength": 0, "RunDelay": 0, "SourcePath": "/var/spool/cgrates/cdrc/in", "Tenant": nil, @@ -865,7 +864,6 @@ func testCgrCfgV1ReloadConfigSection(t *testing.T) { "PartialRecordCache": 0, "ID": "file_reader1", "ProcessedPath": "/tmp/ers/out", - "RowLength": 0, "RunDelay": -1., "SourcePath": "/tmp/ers/in", "Tenant": nil, diff --git a/config/config_test.go b/config/config_test.go index 10aa2af65..00ff589a8 100755 --- a/config/config_test.go +++ b/config/config_test.go @@ -482,97 +482,84 @@ func TestCgrCfgJSONLoadCDRS(t *testing.T) { func TestCgrCfgJSONDefaultsCdreProfiles(t *testing.T) { eContentFlds := []*FCTemplate{ { - Tag: "*exp.CGRID", - Path: "*exp.CGRID", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.CGRID", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.CGRID", + Path: "*exp.CGRID", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.CGRID", true, utils.INFIELD_SEP), }, { - Tag: "*exp.RunID", - Path: "*exp.RunID", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.RunID", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.RunID", + Path: "*exp.RunID", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.RunID", true, utils.INFIELD_SEP), }, { - Tag: "*exp.ToR", - Path: "*exp.ToR", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.ToR", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.ToR", + Path: "*exp.ToR", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.ToR", true, utils.INFIELD_SEP), }, { - Tag: "*exp.OriginID", - Path: "*exp.OriginID", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.OriginID", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.OriginID", + Path: "*exp.OriginID", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.OriginID", true, utils.INFIELD_SEP), }, { - Tag: "*exp.RequestType", - Path: "*exp.RequestType", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.RequestType", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.RequestType", + Path: "*exp.RequestType", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.RequestType", true, utils.INFIELD_SEP), }, { - Tag: "*exp.Tenant", - Path: "*exp.Tenant", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.Tenant", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.Tenant", + Path: "*exp.Tenant", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.Tenant", true, utils.INFIELD_SEP), }, { - Tag: "*exp.Category", - Path: "*exp.Category", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.Category", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.Category", + Path: "*exp.Category", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.Category", true, utils.INFIELD_SEP), }, { - Tag: "*exp.Account", - Path: "*exp.Account", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.Account", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.Account", + Path: "*exp.Account", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.Account", true, utils.INFIELD_SEP), }, { - Tag: "*exp.Subject", - Path: "*exp.Subject", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.Subject", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.Subject", + Path: "*exp.Subject", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.Subject", true, utils.INFIELD_SEP), }, { - Tag: "*exp.Destination", - Path: "*exp.Destination", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.Destination", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.Destination", + Path: "*exp.Destination", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.Destination", true, utils.INFIELD_SEP), }, { - Tag: "*exp.SetupTime", - Path: "*exp.SetupTime", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.SetupTime", true, utils.INFIELD_SEP), - Layout: "2006-01-02T15:04:05Z07:00", - RoundingDecimals: 5, + Tag: "*exp.SetupTime", + Path: "*exp.SetupTime", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.SetupTime", true, utils.INFIELD_SEP), + Layout: "2006-01-02T15:04:05Z07:00", }, { - Tag: "*exp.AnswerTime", - Path: "*exp.AnswerTime", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.AnswerTime", true, utils.INFIELD_SEP), - Layout: "2006-01-02T15:04:05Z07:00", - RoundingDecimals: 5, + Tag: "*exp.AnswerTime", + Path: "*exp.AnswerTime", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.AnswerTime", true, utils.INFIELD_SEP), + Layout: "2006-01-02T15:04:05Z07:00", }, { - Tag: "*exp.Usage", - Path: "*exp.Usage", - Type: "*variable", - Value: NewRSRParsersMustCompile("~*req.Usage", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Tag: "*exp.Usage", + Path: "*exp.Usage", + Type: "*variable", + Value: NewRSRParsersMustCompile("~*req.Usage", true, utils.INFIELD_SEP), }, { Tag: "*exp.Cost", @@ -595,7 +582,7 @@ func TestCgrCfgJSONDefaultsCdreProfiles(t *testing.T) { }, } if !reflect.DeepEqual(cgrCfg.CdreProfiles, eCdreCfg) { - t.Errorf("Expecting: %+v,\nReceived: %+v", utils.ToJSON(eCdreCfg), utils.ToJSON(cgrCfg.CdreProfiles)) + t.Errorf("received: %+v, expecting: %+v", cgrCfg.CdreProfiles, eCdreCfg) } } @@ -1034,62 +1021,51 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.AttributesCsv, Fields: []*FCTemplate{ {Tag: "TenantID", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ProfileID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "Contexts", - Path: "Contexts", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Contexts", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "AttributeFilterIDs", - Path: "AttributeFilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "AttributeFilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, {Tag: "Path", - Path: "Path", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Path", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP)}, {Tag: "Type", - Path: "Type", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Type", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP)}, {Tag: "Value", - Path: "Value", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Value", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP)}, {Tag: "Blocker", - Path: "Blocker", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Blocker", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP)}, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP)}, }, }, { @@ -1097,37 +1073,31 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.FiltersCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "Type", - Path: "Type", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Type", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "Element", - Path: "Element", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Element", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "Values", - Path: "Values", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Values", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, }, }, { @@ -1135,62 +1105,51 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.ResourcesCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "TTL", - Path: "UsageTTL", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "UsageTTL", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "Limit", - Path: "Limit", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Limit", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, {Tag: "AllocationMessage", - Path: "AllocationMessage", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "AllocationMessage", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP)}, {Tag: "Blocker", - Path: "Blocker", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Blocker", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP)}, {Tag: "Stored", - Path: "Stored", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Stored", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP)}, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP)}, {Tag: "ThresholdIDs", - Path: "ThresholdIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ThresholdIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP)}, }, }, { @@ -1198,73 +1157,60 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.StatsCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "QueueLength", - Path: "QueueLength", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "QueueLength", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "TTL", - Path: "TTL", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "TTL", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, {Tag: "MinItems", - Path: "MinItems", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "MinItems", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP)}, {Tag: "MetricIDs", - Path: "MetricIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "MetricIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP)}, {Tag: "MetricFilterIDs", - Path: "MetricFilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "MetricFilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP)}, {Tag: "Blocker", - Path: "Blocker", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Blocker", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP)}, {Tag: "Stored", - Path: "Stored", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Stored", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP)}, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~11", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~11", true, utils.INFIELD_SEP)}, {Tag: "ThresholdIDs", - Path: "ThresholdIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~12", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ThresholdIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~12", true, utils.INFIELD_SEP)}, }, }, { @@ -1272,62 +1218,51 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.ThresholdsCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "MaxHits", - Path: "MaxHits", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "MaxHits", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "MinHits", - Path: "MinHits", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "MinHits", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, {Tag: "MinSleep", - Path: "MinSleep", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "MinSleep", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP)}, {Tag: "Blocker", - Path: "Blocker", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Blocker", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP)}, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP)}, {Tag: "ActionIDs", - Path: "ActionIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActionIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP)}, {Tag: "Async", - Path: "Async", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Async", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP)}, }, }, { @@ -1335,87 +1270,71 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.SuppliersCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "Sorting", - Path: "Sorting", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Sorting", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "SortingParamameters", - Path: "SortingParamameters", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SortingParamameters", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, {Tag: "SupplierID", - Path: "SupplierID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP)}, {Tag: "SupplierFilterIDs", - Path: "SupplierFilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierFilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP)}, {Tag: "SupplierAccountIDs", - Path: "SupplierAccountIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierAccountIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP)}, {Tag: "SupplierRatingPlanIDs", - Path: "SupplierRatingPlanIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierRatingPlanIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP)}, {Tag: "SupplierResourceIDs", - Path: "SupplierResourceIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierResourceIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP)}, {Tag: "SupplierStatIDs", - Path: "SupplierStatIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~11", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierStatIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~11", true, utils.INFIELD_SEP)}, {Tag: "SupplierWeight", - Path: "SupplierWeight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~12", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierWeight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~12", true, utils.INFIELD_SEP)}, {Tag: "SupplierBlocker", - Path: "SupplierBlocker", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~13", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierBlocker", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~13", true, utils.INFIELD_SEP)}, {Tag: "SupplierParameters", - Path: "SupplierParameters", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~14", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "SupplierParameters", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~14", true, utils.INFIELD_SEP)}, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~15", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~15", true, utils.INFIELD_SEP)}, }, }, { @@ -1423,42 +1342,35 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.ChargersCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP)}, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP)}, {Tag: "RunID", - Path: "RunID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "RunID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP)}, {Tag: "AttributeIDs", - Path: "AttributeIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "AttributeIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP)}, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5}, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP)}, }, }, { @@ -1466,82 +1378,69 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.DispatcherProfilesCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "Contexts", - Path: "Contexts", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "Contexts", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), }, {Tag: "FilterIDs", - Path: "FilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "FilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), }, {Tag: "ActivationInterval", - Path: "ActivationInterval", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "ActivationInterval", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), }, {Tag: "Strategy", - Path: "Strategy", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "Strategy", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~5", true, utils.INFIELD_SEP), }, {Tag: "StrategyParameters", - Path: "StrategyParameters", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "StrategyParameters", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~6", true, utils.INFIELD_SEP), }, {Tag: "ConnID", - Path: "ConnID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "ConnID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~7", true, utils.INFIELD_SEP), }, {Tag: "ConnFilterIDs", - Path: "ConnFilterIDs", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "ConnFilterIDs", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~8", true, utils.INFIELD_SEP), }, {Tag: "ConnWeight", - Path: "ConnWeight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "ConnWeight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~9", true, utils.INFIELD_SEP), }, {Tag: "ConnBlocker", - Path: "ConnBlocker", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "ConnBlocker", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~10", true, utils.INFIELD_SEP), }, {Tag: "ConnParameters", - Path: "ConnParameters", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~11", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "ConnParameters", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~11", true, utils.INFIELD_SEP), }, {Tag: "Weight", - Path: "Weight", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~12", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "Weight", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~12", true, utils.INFIELD_SEP), }, }, }, @@ -1550,34 +1449,29 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { Filename: utils.DispatcherHostsCsv, Fields: []*FCTemplate{ {Tag: "Tenant", - Path: "Tenant", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "Tenant", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~0", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "ID", - Path: "ID", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), - Mandatory: true, - RoundingDecimals: 5}, + Path: "ID", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~1", true, utils.INFIELD_SEP), + Mandatory: true}, {Tag: "Address", - Path: "Address", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "Address", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~2", true, utils.INFIELD_SEP), }, {Tag: "Transport", - Path: "Transport", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "Transport", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~3", true, utils.INFIELD_SEP), }, {Tag: "TLS", - Path: "TLS", - Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), - RoundingDecimals: 5, + Path: "TLS", + Type: utils.MetaVariable, + Value: NewRSRParsersMustCompile("~4", true, utils.INFIELD_SEP), }, }, }, @@ -1585,7 +1479,7 @@ func TestCgrLoaderCfgITDefaults(t *testing.T) { }, } if !reflect.DeepEqual(eCfg, cgrCfg.loaderCfg) { - t.Errorf("Expecting: %+v,\nReceived: %+v", + t.Errorf("received: %+v, \n expecting: %+v", utils.ToJSON(eCfg), utils.ToJSON(cgrCfg.loaderCfg)) } } @@ -1790,27 +1684,27 @@ func TestCgrCdfEventReader(t *testing.T) { Flags: utils.FlagsWithParams{}, Fields: []*FCTemplate{ {Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true}, }, CacheDumpFields: []*FCTemplate{}, }, @@ -1837,27 +1731,27 @@ func TestCgrCfgEventReaderDefault(t *testing.T) { Flags: utils.FlagsWithParams{}, Fields: []*FCTemplate{ {Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true}, }, CacheDumpFields: make([]*FCTemplate, 0), } diff --git a/config/diametercfg.go b/config/diametercfg.go index 947ef6b77..cc08d06d7 100644 --- a/config/diametercfg.go +++ b/config/diametercfg.go @@ -39,7 +39,7 @@ type DiameterAgentCfg struct { RequestProcessors []*RequestProcessor } -func (da *DiameterAgentCfg) loadFromJsonCfg(jsnCfg *DiameterAgentJsonCfg, separator string, rounding int) (err error) { +func (da *DiameterAgentCfg) loadFromJsonCfg(jsnCfg *DiameterAgentJsonCfg, separator string) (err error) { if jsnCfg == nil { return nil } @@ -98,7 +98,7 @@ func (da *DiameterAgentCfg) loadFromJsonCfg(jsnCfg *DiameterAgentJsonCfg, separa da.Templates = make(map[string][]*FCTemplate) } for k, jsnTpls := range jsnCfg.Templates { - if da.Templates[k], err = FCTemplatesFromFCTemplatesJsonCfg(jsnTpls, separator, rounding); err != nil { + if da.Templates[k], err = FCTemplatesFromFCTemplatesJsonCfg(jsnTpls, separator); err != nil { return } } @@ -114,7 +114,7 @@ func (da *DiameterAgentCfg) loadFromJsonCfg(jsnCfg *DiameterAgentJsonCfg, separa break } } - if err := rp.loadFromJsonCfg(reqProcJsn, separator, rounding); err != nil { + if err := rp.loadFromJsonCfg(reqProcJsn, separator); err != nil { return nil } if !haveID { diff --git a/config/diametercfg_test.go b/config/diametercfg_test.go index e8bf072c7..3c99009fa 100644 --- a/config/diametercfg_test.go +++ b/config/diametercfg_test.go @@ -26,12 +26,12 @@ import ( func TestDiameterAgentCfgloadFromJsonCfg(t *testing.T) { var dacfg, expected DiameterAgentCfg - if err := dacfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 5); err != nil { + if err := dacfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(dacfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, dacfg) } - if err := dacfg.loadFromJsonCfg(new(DiameterAgentJsonCfg), utils.INFIELD_SEP, 5); err != nil { + if err := dacfg.loadFromJsonCfg(new(DiameterAgentJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(dacfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, dacfg) @@ -66,7 +66,7 @@ func TestDiameterAgentCfgloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnDaCfg, err := jsnCfg.DiameterAgentJsonCfg(); err != nil { t.Error(err) - } else if err = dacfg.loadFromJsonCfg(jsnDaCfg, utils.INFIELD_SEP, 5); err != nil { + } else if err = dacfg.loadFromJsonCfg(jsnDaCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, dacfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(dacfg)) diff --git a/config/dnsagentcfg_test.go b/config/dnsagentcfg_test.go index 065f7b1c5..fab5cf868 100644 --- a/config/dnsagentcfg_test.go +++ b/config/dnsagentcfg_test.go @@ -26,12 +26,12 @@ import ( func TestDNSAgentCfgloadFromJsonCfg(t *testing.T) { var dnsCfg, expected DNSAgentCfg - if err := dnsCfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 5); err != nil { + if err := dnsCfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(dnsCfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, dnsCfg) } - if err := dnsCfg.loadFromJsonCfg(new(DNSAgentJsonCfg), utils.INFIELD_SEP, 5); err != nil { + if err := dnsCfg.loadFromJsonCfg(new(DNSAgentJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(dnsCfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, dnsCfg) @@ -57,7 +57,7 @@ func TestDNSAgentCfgloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnDaCfg, err := jsnCfg.DNSAgentJsonCfg(); err != nil { t.Error(err) - } else if err = dnsCfg.loadFromJsonCfg(jsnDaCfg, utils.INFIELD_SEP, 5); err != nil { + } else if err = dnsCfg.loadFromJsonCfg(jsnDaCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, dnsCfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(dnsCfg)) @@ -66,12 +66,12 @@ func TestDNSAgentCfgloadFromJsonCfg(t *testing.T) { func TestRequestProcessorloadFromJsonCfg(t *testing.T) { var dareq, expected RequestProcessor - if err := dareq.loadFromJsonCfg(nil, utils.INFIELD_SEP, 5); err != nil { + if err := dareq.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(dareq, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, dareq) } - if err := dareq.loadFromJsonCfg(new(ReqProcessorJsnCfg), utils.INFIELD_SEP, 5); err != nil { + if err := dareq.loadFromJsonCfg(new(ReqProcessorJsnCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(dareq, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, dareq) @@ -88,7 +88,7 @@ func TestRequestProcessorloadFromJsonCfg(t *testing.T) { Filters: []string{"filter1", "filter2"}, Flags: utils.FlagsWithParams{"flag1": []string{}, "flag2": []string{}}, } - if err = dareq.loadFromJsonCfg(json, utils.INFIELD_SEP, 5); err != nil { + if err = dareq.loadFromJsonCfg(json, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, dareq) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(dareq)) diff --git a/config/dnsagntcfg.go b/config/dnsagntcfg.go index e0a466be2..c967bc763 100644 --- a/config/dnsagntcfg.go +++ b/config/dnsagntcfg.go @@ -31,7 +31,7 @@ type DNSAgentCfg struct { RequestProcessors []*RequestProcessor } -func (da *DNSAgentCfg) loadFromJsonCfg(jsnCfg *DNSAgentJsonCfg, sep string, rounding int) (err error) { +func (da *DNSAgentCfg) loadFromJsonCfg(jsnCfg *DNSAgentJsonCfg, sep string) (err error) { if jsnCfg == nil { return nil } @@ -69,7 +69,7 @@ func (da *DNSAgentCfg) loadFromJsonCfg(jsnCfg *DNSAgentJsonCfg, sep string, roun break } } - if err := rp.loadFromJsonCfg(reqProcJsn, sep, rounding); err != nil { + if err := rp.loadFromJsonCfg(reqProcJsn, sep); err != nil { return nil } if !haveID { @@ -91,7 +91,7 @@ type RequestProcessor struct { ReplyFields []*FCTemplate } -func (rp *RequestProcessor) loadFromJsonCfg(jsnCfg *ReqProcessorJsnCfg, sep string, rounding int) (err error) { +func (rp *RequestProcessor) loadFromJsonCfg(jsnCfg *ReqProcessorJsnCfg, sep string) (err error) { if jsnCfg == nil { return nil } @@ -118,12 +118,12 @@ func (rp *RequestProcessor) loadFromJsonCfg(jsnCfg *ReqProcessorJsnCfg, sep stri } } if jsnCfg.Request_fields != nil { - if rp.RequestFields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Request_fields, sep, rounding); err != nil { + if rp.RequestFields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Request_fields, sep); err != nil { return } } if jsnCfg.Reply_fields != nil { - if rp.ReplyFields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Reply_fields, sep, rounding); err != nil { + if rp.ReplyFields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Reply_fields, sep); err != nil { return } } diff --git a/config/erscfg.go b/config/erscfg.go index 5f2b58f79..7b474ba33 100644 --- a/config/erscfg.go +++ b/config/erscfg.go @@ -30,7 +30,7 @@ type ERsCfg struct { Readers []*EventReaderCfg } -func (erS *ERsCfg) loadFromJsonCfg(jsnCfg *ERsJsonCfg, sep string, dfltRdrCfg *EventReaderCfg, rounding int) (err error) { +func (erS *ERsCfg) loadFromJsonCfg(jsnCfg *ERsJsonCfg, sep string, dfltRdrCfg *EventReaderCfg) (err error) { if jsnCfg == nil { return } @@ -48,11 +48,11 @@ func (erS *ERsCfg) loadFromJsonCfg(jsnCfg *ERsJsonCfg, sep string, dfltRdrCfg *E } } } - return erS.appendERsReaders(jsnCfg.Readers, sep, dfltRdrCfg, rounding) + return erS.appendERsReaders(jsnCfg.Readers, sep, dfltRdrCfg) } func (ers *ERsCfg) appendERsReaders(jsnReaders *[]*EventReaderJsonCfg, sep string, - dfltRdrCfg *EventReaderCfg, rounding int) (err error) { + dfltRdrCfg *EventReaderCfg) (err error) { if jsnReaders == nil { return } @@ -72,7 +72,7 @@ func (ers *ERsCfg) appendERsReaders(jsnReaders *[]*EventReaderJsonCfg, sep strin } } - if err := rdr.loadFromJsonCfg(jsnReader, sep, rounding); err != nil { + if err := rdr.loadFromJsonCfg(jsnReader, sep); err != nil { return err } if !haveID { @@ -119,7 +119,7 @@ type EventReaderCfg struct { CacheDumpFields []*FCTemplate } -func (er *EventReaderCfg) loadFromJsonCfg(jsnCfg *EventReaderJsonCfg, sep string, rounding int) (err error) { +func (er *EventReaderCfg) loadFromJsonCfg(jsnCfg *EventReaderJsonCfg, sep string) (err error) { if jsnCfg == nil { return } @@ -183,12 +183,12 @@ func (er *EventReaderCfg) loadFromJsonCfg(jsnCfg *EventReaderJsonCfg, sep string er.PartialCacheExpiryAction = *jsnCfg.Partial_cache_expiry_action } if jsnCfg.Fields != nil { - if er.Fields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Fields, sep, rounding); err != nil { + if er.Fields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Fields, sep); err != nil { return err } } if jsnCfg.Cache_dump_fields != nil { - if er.CacheDumpFields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Cache_dump_fields, sep, rounding); err != nil { + if er.CacheDumpFields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Cache_dump_fields, sep); err != nil { return err } } diff --git a/config/erscfg_test.go b/config/erscfg_test.go index daf57dd76..a4f0d0fd5 100644 --- a/config/erscfg_test.go +++ b/config/erscfg_test.go @@ -113,27 +113,27 @@ func TestEventReaderLoadFromJSON(t *testing.T) { Flags: utils.FlagsWithParams{}, Fields: []*FCTemplate{ {Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true}, }, CacheDumpFields: make([]*FCTemplate, 0), }, @@ -152,27 +152,27 @@ func TestEventReaderLoadFromJSON(t *testing.T) { Flags: utils.FlagsWithParams{}, Fields: []*FCTemplate{ {Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true}, }, CacheDumpFields: make([]*FCTemplate, 0), }, @@ -245,27 +245,27 @@ func TestEventReaderSameID(t *testing.T) { Flags: utils.FlagsWithParams{}, Fields: []*FCTemplate{ {Tag: utils.ToR, Path: utils.MetaCgreq + utils.NestingSep + utils.ToR, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.2", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.OriginID, Path: utils.MetaCgreq + utils.NestingSep + utils.OriginID, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.3", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.RequestType, Path: utils.MetaCgreq + utils.NestingSep + utils.RequestType, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.4", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Tenant, Path: utils.MetaCgreq + utils.NestingSep + utils.Tenant, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.6", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Category, Path: utils.MetaCgreq + utils.NestingSep + utils.Category, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.7", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Account, Path: utils.MetaCgreq + utils.NestingSep + utils.Account, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.8", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Subject, Path: utils.MetaCgreq + utils.NestingSep + utils.Subject, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.9", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Destination, Path: utils.MetaCgreq + utils.NestingSep + utils.Destination, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.10", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.SetupTime, Path: utils.MetaCgreq + utils.NestingSep + utils.SetupTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.11", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.AnswerTime, Path: utils.MetaCgreq + utils.NestingSep + utils.AnswerTime, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.12", true, utils.INFIELD_SEP), Mandatory: true}, {Tag: utils.Usage, Path: utils.MetaCgreq + utils.NestingSep + utils.Usage, Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("~*req.13", true, utils.INFIELD_SEP), Mandatory: true}, }, CacheDumpFields: make([]*FCTemplate, 0), }, @@ -285,7 +285,7 @@ func TestEventReaderSameID(t *testing.T) { Flags: utils.FlagsWithParams{}, Fields: []*FCTemplate{ {Tag: "CustomTag2", Path: "CustomPath2", Type: utils.MetaVariable, - Value: NewRSRParsersMustCompile("CustomValue2", true, utils.INFIELD_SEP), Mandatory: true, RoundingDecimals: 5}, + Value: NewRSRParsersMustCompile("CustomValue2", true, utils.INFIELD_SEP), Mandatory: true}, }, CacheDumpFields: make([]*FCTemplate, 0), }, diff --git a/config/fctemplate.go b/config/fctemplate.go index e06d50357..4efc652d3 100755 --- a/config/fctemplate.go +++ b/config/fctemplate.go @@ -24,7 +24,7 @@ import ( "github.com/cgrates/cgrates/utils" ) -func NewFCTemplateFromFCTemplateJsonCfg(jsnCfg *FcTemplateJsonCfg, separator string, roundingDecimals int) (*FCTemplate, error) { +func NewFCTemplateFromFCTemplateJsonCfg(jsnCfg *FcTemplateJsonCfg, separator string) (*FCTemplate, error) { fcTmp := new(FCTemplate) var err error if jsnCfg.Type != nil { @@ -81,7 +81,6 @@ func NewFCTemplateFromFCTemplateJsonCfg(jsnCfg *FcTemplateJsonCfg, separator str if jsnCfg.Cost_shift_digits != nil { fcTmp.CostShiftDigits = *jsnCfg.Cost_shift_digits } - fcTmp.RoundingDecimals = roundingDecimals if jsnCfg.Rounding_decimals != nil { fcTmp.RoundingDecimals = *jsnCfg.Rounding_decimals } @@ -116,11 +115,11 @@ type FCTemplate struct { MaskLen int } -func FCTemplatesFromFCTemplatesJsonCfg(jsnCfgFlds []*FcTemplateJsonCfg, separator string, rounding int) ([]*FCTemplate, error) { +func FCTemplatesFromFCTemplatesJsonCfg(jsnCfgFlds []*FcTemplateJsonCfg, separator string) ([]*FCTemplate, error) { retFields := make([]*FCTemplate, len(jsnCfgFlds)) var err error for i, jsnFld := range jsnCfgFlds { - if retFields[i], err = NewFCTemplateFromFCTemplateJsonCfg(jsnFld, separator, rounding); err != nil { + if retFields[i], err = NewFCTemplateFromFCTemplateJsonCfg(jsnFld, separator); err != nil { return nil, err } } diff --git a/config/fctemplate_test.go b/config/fctemplate_test.go index b5b776006..0040fccf4 100755 --- a/config/fctemplate_test.go +++ b/config/fctemplate_test.go @@ -39,7 +39,7 @@ func TestNewFCTemplateFromFCTemplateJsonCfg(t *testing.T) { Filters: []string{"Filter1", "Filter2"}, Value: NewRSRParsersMustCompile("cgrates.org", true, utils.INFIELD_SEP), } - if rcv, err := NewFCTemplateFromFCTemplateJsonCfg(jsonCfg, utils.INFIELD_SEP, 0); err != nil { + if rcv, err := NewFCTemplateFromFCTemplateJsonCfg(jsonCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, rcv) { t.Errorf("expected: %s ,received: %s", utils.ToJSON(expected), utils.ToJSON(rcv)) @@ -79,7 +79,7 @@ func TestFCTemplatesFromFCTemplatesJsonCfg(t *testing.T) { Value: NewRSRParsersMustCompile("SampleValue", true, utils.INFIELD_SEP), }, } - if rcv, err := FCTemplatesFromFCTemplatesJsonCfg(jsnCfgs, utils.INFIELD_SEP, 0); err != nil { + if rcv, err := FCTemplatesFromFCTemplatesJsonCfg(jsnCfgs, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, rcv) { t.Errorf("expected: %s ,received: %s", utils.ToJSON(expected), utils.ToJSON(rcv)) @@ -315,69 +315,3 @@ func TestFCTemplateClone(t *testing.T) { t.Errorf("expected: %s ,received: %s", utils.ToJSON(initialSmpl), utils.ToJSON(cloned)) } } - -func TestRoundingDecimals(t *testing.T) { - jsonCfg := &FcTemplateJsonCfg{ - Tag: utils.StringPointer("Tenant"), - Type: utils.StringPointer("*composed"), - Path: utils.StringPointer("Tenant"), - Filters: &[]string{"Filter1", "Filter2"}, - Value: utils.StringPointer("cgrates.org"), - } - expected := &FCTemplate{ - Tag: "Tenant", - Type: "*composed", - Path: "Tenant", - Filters: []string{"Filter1", "Filter2"}, - Value: NewRSRParsersMustCompile("cgrates.org", true, utils.INFIELD_SEP), - RoundingDecimals: 5, - } - if rcv, err := NewFCTemplateFromFCTemplateJsonCfg(jsonCfg, utils.INFIELD_SEP, 5); err != nil { - t.Error(err) - } else if !reflect.DeepEqual(expected, rcv) { - t.Errorf("expected: %s\n ,received: %s", utils.ToJSON(expected), utils.ToJSON(rcv)) - } - - jsonCfg = &FcTemplateJsonCfg{ - Tag: utils.StringPointer("Tenant"), - Type: utils.StringPointer("*composed"), - Path: utils.StringPointer("Tenant"), - Filters: &[]string{"Filter1", "Filter2"}, - Value: utils.StringPointer("cgrates.org"), - Rounding_decimals: utils.IntPointer(3), - } - expected = &FCTemplate{ - Tag: "Tenant", - Type: "*composed", - Path: "Tenant", - Filters: []string{"Filter1", "Filter2"}, - Value: NewRSRParsersMustCompile("cgrates.org", true, utils.INFIELD_SEP), - RoundingDecimals: 3, - } - if rcv, err := NewFCTemplateFromFCTemplateJsonCfg(jsonCfg, utils.INFIELD_SEP, 5); err != nil { - t.Error(err) - } else if !reflect.DeepEqual(expected, rcv) { - t.Errorf("expected: %s\n ,received: %s", utils.ToJSON(expected), utils.ToJSON(rcv)) - } - - jsonCfg = &FcTemplateJsonCfg{ - Tag: utils.StringPointer("Tenant"), - Type: utils.StringPointer("*composed"), - Path: utils.StringPointer("Tenant"), - Filters: &[]string{"Filter1", "Filter2"}, - Value: utils.StringPointer("cgrates.org"), - } - expected = &FCTemplate{ - Tag: "Tenant", - Type: "*composed", - Path: "Tenant", - Filters: []string{"Filter1", "Filter2"}, - Value: NewRSRParsersMustCompile("cgrates.org", true, utils.INFIELD_SEP), - RoundingDecimals: 0, - } - if rcv, err := NewFCTemplateFromFCTemplateJsonCfg(jsonCfg, utils.INFIELD_SEP, 0); err != nil { - t.Error(err) - } else if !reflect.DeepEqual(expected, rcv) { - t.Errorf("expected: %s\n ,received: %s", utils.ToJSON(expected), utils.ToJSON(rcv)) - } -} diff --git a/config/httpagntcfg.go b/config/httpagntcfg.go index b8b772859..f546fa619 100644 --- a/config/httpagntcfg.go +++ b/config/httpagntcfg.go @@ -22,7 +22,7 @@ import "github.com/cgrates/cgrates/utils" type HttpAgentCfgs []*HttpAgentCfg -func (hcfgs *HttpAgentCfgs) loadFromJsonCfg(jsnHttpAgntCfg *[]*HttpAgentJsonCfg, separator string, rounding int) (err error) { +func (hcfgs *HttpAgentCfgs) loadFromJsonCfg(jsnHttpAgntCfg *[]*HttpAgentJsonCfg, separator string) (err error) { if jsnHttpAgntCfg == nil { return nil } @@ -39,7 +39,7 @@ func (hcfgs *HttpAgentCfgs) loadFromJsonCfg(jsnHttpAgntCfg *[]*HttpAgentJsonCfg, } } - if err := hac.loadFromJsonCfg(jsnCfg, separator, rounding); err != nil { + if err := hac.loadFromJsonCfg(jsnCfg, separator); err != nil { return err } if !haveID { @@ -59,7 +59,7 @@ type HttpAgentCfg struct { RequestProcessors []*RequestProcessor } -func (ca *HttpAgentCfg) appendHttpAgntProcCfgs(hps *[]*ReqProcessorJsnCfg, separator string, rounding int) (err error) { +func (ca *HttpAgentCfg) appendHttpAgntProcCfgs(hps *[]*ReqProcessorJsnCfg, separator string) (err error) { if hps == nil { return } @@ -75,7 +75,7 @@ func (ca *HttpAgentCfg) appendHttpAgntProcCfgs(hps *[]*ReqProcessorJsnCfg, separ } } } - if err := rp.loadFromJsonCfg(reqProcJsn, separator, rounding); err != nil { + if err := rp.loadFromJsonCfg(reqProcJsn, separator); err != nil { return err } if !haveID { @@ -85,7 +85,7 @@ func (ca *HttpAgentCfg) appendHttpAgntProcCfgs(hps *[]*ReqProcessorJsnCfg, separ return nil } -func (ca *HttpAgentCfg) loadFromJsonCfg(jsnCfg *HttpAgentJsonCfg, separator string, rounding int) (err error) { +func (ca *HttpAgentCfg) loadFromJsonCfg(jsnCfg *HttpAgentJsonCfg, separator string) (err error) { if jsnCfg == nil { return nil } @@ -112,7 +112,7 @@ func (ca *HttpAgentCfg) loadFromJsonCfg(jsnCfg *HttpAgentJsonCfg, separator stri if jsnCfg.Reply_payload != nil { ca.ReplyPayload = *jsnCfg.Reply_payload } - if err = ca.appendHttpAgntProcCfgs(jsnCfg.Request_processors, separator, rounding); err != nil { + if err = ca.appendHttpAgntProcCfgs(jsnCfg.Request_processors, separator); err != nil { return err } return nil diff --git a/config/httpagntcfg_test.go b/config/httpagntcfg_test.go index f46068ae4..45c721494 100644 --- a/config/httpagntcfg_test.go +++ b/config/httpagntcfg_test.go @@ -26,12 +26,12 @@ import ( func TestHttpAgentCfgsloadFromJsonCfg(t *testing.T) { var httpcfg, expected HttpAgentCfgs - if err := httpcfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 0); err != nil { + if err := httpcfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(httpcfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, httpcfg) } - if err := httpcfg.loadFromJsonCfg(new([]*HttpAgentJsonCfg), utils.INFIELD_SEP, 0); err != nil { + if err := httpcfg.loadFromJsonCfg(new([]*HttpAgentJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(httpcfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, httpcfg) @@ -86,7 +86,7 @@ func TestHttpAgentCfgsloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnhttpCfg, err := jsnCfg.HttpAgentJsonCfg(); err != nil { t.Error(err) - } else if err = httpcfg.loadFromJsonCfg(jsnhttpCfg, utils.INFIELD_SEP, 0); err != nil { + } else if err = httpcfg.loadFromJsonCfg(jsnhttpCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, httpcfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(httpcfg)) @@ -193,7 +193,7 @@ func TestHttpAgentCfgsloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnhttpCfg, err := jsnCfg.HttpAgentJsonCfg(); err != nil { t.Error(err) - } else if err = httpcfg.loadFromJsonCfg(jsnhttpCfg, utils.INFIELD_SEP, 0); err != nil { + } else if err = httpcfg.loadFromJsonCfg(jsnhttpCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, httpcfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(httpcfg)) @@ -202,12 +202,12 @@ func TestHttpAgentCfgsloadFromJsonCfg(t *testing.T) { func TestHttpAgentCfgloadFromJsonCfg(t *testing.T) { var httpcfg, expected HttpAgentCfg - if err := httpcfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 5); err != nil { + if err := httpcfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(httpcfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, httpcfg) } - if err := httpcfg.loadFromJsonCfg(new(HttpAgentJsonCfg), utils.INFIELD_SEP, 5); err != nil { + if err := httpcfg.loadFromJsonCfg(new(HttpAgentJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(httpcfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, httpcfg) @@ -246,7 +246,7 @@ func TestHttpAgentCfgloadFromJsonCfg(t *testing.T) { }}, } - if err = httpcfg.loadFromJsonCfg(jsnhttpCfg, utils.INFIELD_SEP, 5); err != nil { + if err = httpcfg.loadFromJsonCfg(jsnhttpCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, httpcfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(httpcfg)) @@ -338,7 +338,7 @@ func TestHttpAgentCfgappendHttpAgntProcCfgs(t *testing.T) { }}, } - if err = initial.appendHttpAgntProcCfgs(proceses, utils.INFIELD_SEP, 0); err != nil { + if err = initial.appendHttpAgntProcCfgs(proceses, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, initial) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(initial)) diff --git a/config/loaderscfg.go b/config/loaderscfg.go index c58475924..a1e80af37 100644 --- a/config/loaderscfg.go +++ b/config/loaderscfg.go @@ -73,7 +73,7 @@ type LoaderDataType struct { //rename to LoaderDataType Fields []*FCTemplate } -func (self *LoaderDataType) loadFromJsonCfg(jsnCfg *LoaderJsonDataType, separator string, rounding int) (err error) { +func (self *LoaderDataType) loadFromJsonCfg(jsnCfg *LoaderJsonDataType, separator string) (err error) { if jsnCfg == nil { return nil } @@ -84,14 +84,14 @@ func (self *LoaderDataType) loadFromJsonCfg(jsnCfg *LoaderJsonDataType, separato self.Filename = *jsnCfg.File_name } if jsnCfg.Fields != nil { - if self.Fields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Fields, separator, rounding); err != nil { + if self.Fields, err = FCTemplatesFromFCTemplatesJsonCfg(*jsnCfg.Fields, separator); err != nil { return } } return nil } -func (self *LoaderSCfg) loadFromJsonCfg(jsnCfg *LoaderJsonCfg, separator string, rounding int) (err error) { +func (self *LoaderSCfg) loadFromJsonCfg(jsnCfg *LoaderJsonCfg, separator string) (err error) { if jsnCfg == nil { return nil } @@ -139,7 +139,7 @@ func (self *LoaderSCfg) loadFromJsonCfg(jsnCfg *LoaderJsonCfg, separator string, data := make([]*LoaderDataType, len(*jsnCfg.Data)) for idx, jsnLoCfg := range *jsnCfg.Data { data[idx] = NewDfltLoaderDataTypeConfig() - data[idx].loadFromJsonCfg(jsnLoCfg, separator, rounding) + data[idx].loadFromJsonCfg(jsnLoCfg, separator) } self.Data = data } diff --git a/config/loaderscfg_test.go b/config/loaderscfg_test.go index 528eaa92f..616a7e7ef 100644 --- a/config/loaderscfg_test.go +++ b/config/loaderscfg_test.go @@ -26,12 +26,12 @@ import ( func TestLoaderSCfgloadFromJsonCfg(t *testing.T) { var loadscfg, expected LoaderSCfg - if err := loadscfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 0); err != nil { + if err := loadscfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(loadscfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, loadscfg) } - if err := loadscfg.loadFromJsonCfg(new(LoaderJsonCfg), utils.INFIELD_SEP, 0); err != nil { + if err := loadscfg.loadFromJsonCfg(new(LoaderJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(loadscfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, loadscfg) @@ -96,7 +96,7 @@ func TestLoaderSCfgloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnLoadersCfg, err := jsnCfg.LoaderJsonCfg(); err != nil { t.Error(err) - } else if err = loadscfg.loadFromJsonCfg(jsnLoadersCfg[0], utils.INFIELD_SEP, 0); err != nil { + } else if err = loadscfg.loadFromJsonCfg(jsnLoadersCfg[0], utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, loadscfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(loadscfg)) diff --git a/config/radiuscfg.go b/config/radiuscfg.go index ef39297df..095722f28 100644 --- a/config/radiuscfg.go +++ b/config/radiuscfg.go @@ -31,7 +31,7 @@ type RadiusAgentCfg struct { RequestProcessors []*RequestProcessor } -func (self *RadiusAgentCfg) loadFromJsonCfg(jsnCfg *RadiusAgentJsonCfg, separator string, rounding int) (err error) { +func (self *RadiusAgentCfg) loadFromJsonCfg(jsnCfg *RadiusAgentJsonCfg, separator string) (err error) { if jsnCfg == nil { return nil } @@ -85,7 +85,7 @@ func (self *RadiusAgentCfg) loadFromJsonCfg(jsnCfg *RadiusAgentJsonCfg, separato break } } - if err := rp.loadFromJsonCfg(reqProcJsn, separator, rounding); err != nil { + if err := rp.loadFromJsonCfg(reqProcJsn, separator); err != nil { return nil } if !haveID { diff --git a/config/radiuscfg_test.go b/config/radiuscfg_test.go index ffcaab0e7..a36ea4f90 100644 --- a/config/radiuscfg_test.go +++ b/config/radiuscfg_test.go @@ -26,12 +26,12 @@ import ( func TestRadiusAgentCfgloadFromJsonCfg(t *testing.T) { var racfg, expected RadiusAgentCfg - if err := racfg.loadFromJsonCfg(nil, utils.INFIELD_SEP, 5); err != nil { + if err := racfg.loadFromJsonCfg(nil, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(racfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, racfg) } - if err := racfg.loadFromJsonCfg(new(RadiusAgentJsonCfg), utils.INFIELD_SEP, 5); err != nil { + if err := racfg.loadFromJsonCfg(new(RadiusAgentJsonCfg), utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(racfg, expected) { t.Errorf("Expected: %+v ,recived: %+v", expected, racfg) @@ -64,7 +64,7 @@ func TestRadiusAgentCfgloadFromJsonCfg(t *testing.T) { t.Error(err) } else if jsnRaCfg, err := jsnCfg.RadiusAgentJsonCfg(); err != nil { t.Error(err) - } else if err = racfg.loadFromJsonCfg(jsnRaCfg, utils.INFIELD_SEP, 5); err != nil { + } else if err = racfg.loadFromJsonCfg(jsnRaCfg, utils.INFIELD_SEP); err != nil { t.Error(err) } else if !reflect.DeepEqual(expected, racfg) { t.Errorf("Expected: %+v , recived: %+v", utils.ToJSON(expected), utils.ToJSON(racfg)) diff --git a/docs/ers.rst b/docs/ers.rst index 2646c64fa..0728ba1fd 100644 --- a/docs/ers.rst +++ b/docs/ers.rst @@ -39,7 +39,7 @@ With explanations in the comments: "run_delay": "-1", // reading of events it is triggered outside of ERs "field_separator": ";", // field separator definition "type": "*file_csv", // type of reader, *file_csv can read .csv files - "row_length" : 0, // Number of fields from csv file + "row_length" : 0, // Number of fields from csv file "flags": [ // influence processing logic within CGRateS workflow "*cdrs", // *cdrs will create CDRs "*log" // *log will log the events to syslog diff --git a/engine/cdrefwv_test.go b/engine/cdrefwv_test.go index b4e436fb1..2de7d1b0e 100644 --- a/engine/cdrefwv_test.go +++ b/engine/cdrefwv_test.go @@ -286,7 +286,7 @@ func TestWriteCdr(t *testing.T) { var err error wrBuf := &bytes.Buffer{} cfg, _ := config.NewDefaultCGRConfig() - if contentCfgFlds, err = config.FCTemplatesFromFCTemplatesJsonCfg(contentJsnCfgFlds, utils.INFIELD_SEP, 5); err != nil { + if contentCfgFlds, err = config.FCTemplatesFromFCTemplatesJsonCfg(contentJsnCfgFlds, utils.INFIELD_SEP); err != nil { t.Error(err) } cdreCfg := &config.CdreCfg{ diff --git a/sessions/sessions_it_test.go b/sessions/sessions_it_test.go index e7bdc3700..361928a6d 100644 --- a/sessions/sessions_it_test.go +++ b/sessions/sessions_it_test.go @@ -189,10 +189,10 @@ func testSessionsItTerminatUnexist(t *testing.T) { t.Errorf("Unexpected number of CDRs returned: %v \n cdrs=%s", len(cdrs), utils.ToJSON(cdrs)) } else { if cdrs[0].Usage != "2m0s" { - t.Errorf("Unexpected CDR Usage received, cdr: %v %+v ", cdrs[0].Usage, utils.ToJSON(cdrs[0])) + t.Errorf("Unexpected CDR Usage received, cdr: %v %+v ", cdrs[0].Usage, cdrs[0]) } if cdrs[0].Cost != 0.7002 { - t.Errorf("Unexpected CDR Usage received, cdr: %v %+v ", cdrs[0].Cost, utils.ToJSON(cdrs[0])) + t.Errorf("Unexpected CDR Usage received, cdr: %v %+v ", cdrs[0].Cost, cdrs[0]) } }