Repair tests after adding max_reconnect_interval option for multiple config sections

This commit is contained in:
ionutboangiu
2022-05-25 18:47:41 +03:00
committed by Dan Christian Bogos
parent 77430ee80a
commit b3341855ce
8 changed files with 149 additions and 124 deletions

View File

@@ -1658,35 +1658,40 @@ func TestDfLoaderJsonCfg(t *testing.T) {
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.5"),
},
{Tag: utils.StringPointer("MaxReconnectInterval"),
Path: utils.StringPointer("MaxReconnectInterval"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.6"),
},
{Tag: utils.StringPointer("ConnectTimeout"),
Path: utils.StringPointer("ConnectTimeout"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.6"),
Value: utils.StringPointer("~*req.7"),
},
{Tag: utils.StringPointer("ReplyTimeout"),
Path: utils.StringPointer("ReplyTimeout"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.7"),
Value: utils.StringPointer("~*req.8"),
},
{Tag: utils.StringPointer("TLS"),
Path: utils.StringPointer("TLS"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.8"),
Value: utils.StringPointer("~*req.9"),
},
{Tag: utils.StringPointer("ClientKey"),
Path: utils.StringPointer("ClientKey"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.9"),
Value: utils.StringPointer("~*req.10"),
},
{Tag: utils.StringPointer("ClientCertificate"),
Path: utils.StringPointer("ClientCertificate"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.10"),
Value: utils.StringPointer("~*req.11"),
},
{Tag: utils.StringPointer("CaCertificate"),
Path: utils.StringPointer("CaCertificate"),
Type: utils.StringPointer(utils.MetaVariable),
Value: utils.StringPointer("~*req.11"),
Value: utils.StringPointer("~*req.12"),
},
},
},

File diff suppressed because one or more lines are too long

View File

@@ -143,29 +143,30 @@ func TestGeneralCfgAsMapInterface(t *testing.T) {
},
}`
eMap := map[string]interface{}{
utils.NodeIDCfg: "cgrates",
utils.LoggerCfg: "*syslog",
utils.LogLevelCfg: 6,
utils.RoundingDecimalsCfg: 5,
utils.DBDataEncodingCfg: "*msgpack",
utils.TpExportPathCfg: "/var/spool/cgrates/tpe",
utils.PosterAttemptsCfg: 3,
utils.FailedPostsDirCfg: "/var/spool/cgrates/failed_posts",
utils.FailedPostsTTLCfg: "5s",
utils.DefaultReqTypeCfg: "*rated",
utils.DefaultCategoryCfg: "call",
utils.DefaultTenantCfg: "cgrates.org",
utils.DefaultTimezoneCfg: "Local",
utils.DefaultCachingCfg: "*reload",
utils.ConnectAttemptsCfg: 5,
utils.ReconnectsCfg: -1,
utils.ConnectTimeoutCfg: "1s",
utils.ReplyTimeoutCfg: "2s",
utils.LockingTimeoutCfg: "1s",
utils.DigestSeparatorCfg: ",",
utils.DigestEqualCfg: ":",
utils.RSRSepCfg: ";",
utils.MaxParallelConnsCfg: 100,
utils.NodeIDCfg: "cgrates",
utils.LoggerCfg: "*syslog",
utils.LogLevelCfg: 6,
utils.RoundingDecimalsCfg: 5,
utils.DBDataEncodingCfg: "*msgpack",
utils.TpExportPathCfg: "/var/spool/cgrates/tpe",
utils.PosterAttemptsCfg: 3,
utils.FailedPostsDirCfg: "/var/spool/cgrates/failed_posts",
utils.FailedPostsTTLCfg: "5s",
utils.DefaultReqTypeCfg: "*rated",
utils.DefaultCategoryCfg: "call",
utils.DefaultTenantCfg: "cgrates.org",
utils.DefaultTimezoneCfg: "Local",
utils.DefaultCachingCfg: "*reload",
utils.ConnectAttemptsCfg: 5,
utils.ReconnectsCfg: -1,
utils.MaxReconnectIntervalCfg: "0",
utils.ConnectTimeoutCfg: "1s",
utils.ReplyTimeoutCfg: "2s",
utils.LockingTimeoutCfg: "1s",
utils.DigestSeparatorCfg: ",",
utils.DigestEqualCfg: ":",
utils.RSRSepCfg: ";",
utils.MaxParallelConnsCfg: 100,
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
t.Error(err)
@@ -186,29 +187,30 @@ func TestGeneralCfgAsMapInterface1(t *testing.T) {
}
}`
eMap := map[string]interface{}{
utils.NodeIDCfg: "ENGINE1",
utils.LoggerCfg: "*syslog",
utils.LogLevelCfg: 6,
utils.RoundingDecimalsCfg: 5,
utils.DBDataEncodingCfg: "*msgpack",
utils.TpExportPathCfg: "/var/spool/cgrates/tpe",
utils.PosterAttemptsCfg: 3,
utils.FailedPostsDirCfg: "/var/spool/cgrates/failed_posts",
utils.FailedPostsTTLCfg: "0",
utils.DefaultReqTypeCfg: "*rated",
utils.DefaultCategoryCfg: "call",
utils.DefaultTenantCfg: "cgrates.org",
utils.DefaultTimezoneCfg: "Local",
utils.DefaultCachingCfg: "*reload",
utils.ConnectAttemptsCfg: 5,
utils.ReconnectsCfg: -1,
utils.ConnectTimeoutCfg: "0",
utils.ReplyTimeoutCfg: "0",
utils.LockingTimeoutCfg: "0",
utils.DigestSeparatorCfg: ",",
utils.DigestEqualCfg: ":",
utils.RSRSepCfg: ";",
utils.MaxParallelConnsCfg: 100,
utils.NodeIDCfg: "ENGINE1",
utils.LoggerCfg: "*syslog",
utils.LogLevelCfg: 6,
utils.RoundingDecimalsCfg: 5,
utils.DBDataEncodingCfg: "*msgpack",
utils.TpExportPathCfg: "/var/spool/cgrates/tpe",
utils.PosterAttemptsCfg: 3,
utils.FailedPostsDirCfg: "/var/spool/cgrates/failed_posts",
utils.FailedPostsTTLCfg: "0",
utils.DefaultReqTypeCfg: "*rated",
utils.DefaultCategoryCfg: "call",
utils.DefaultTenantCfg: "cgrates.org",
utils.DefaultTimezoneCfg: "Local",
utils.DefaultCachingCfg: "*reload",
utils.ConnectAttemptsCfg: 5,
utils.ReconnectsCfg: -1,
utils.MaxReconnectIntervalCfg: "0",
utils.ConnectTimeoutCfg: "0",
utils.ReplyTimeoutCfg: "0",
utils.LockingTimeoutCfg: "0",
utils.DigestSeparatorCfg: ",",
utils.DigestEqualCfg: ":",
utils.RSRSepCfg: ";",
utils.MaxParallelConnsCfg: 100,
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
t.Error(err)

View File

@@ -69,7 +69,7 @@ func (kamCfg *KamConnCfg) AsMapInterface() map[string]interface{} {
utils.AliasCfg: kamCfg.Alias,
utils.AddressCfg: kamCfg.Address,
utils.ReconnectsCfg: kamCfg.Reconnects,
utils.MaxReconnectIntervalCfg: kamCfg.MaxReconnectInterval,
utils.MaxReconnectIntervalCfg: kamCfg.MaxReconnectInterval.String(),
}
}

View File

@@ -98,7 +98,7 @@ func TestKamAgentCfgAsMapInterface(t *testing.T) {
utils.CreateCdrCfg: true,
utils.TimezoneCfg: "UTC",
utils.EvapiConnsCfg: []map[string]interface{}{
{utils.AddressCfg: "127.0.0.1:8448", utils.ReconnectsCfg: 5, utils.AliasCfg: ""},
{utils.AddressCfg: "127.0.0.1:8448", utils.ReconnectsCfg: 5, utils.MaxReconnectIntervalCfg: "0s", utils.AliasCfg: ""},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
@@ -118,7 +118,7 @@ func TestKamAgentCfgAsMapInterface1(t *testing.T) {
utils.CreateCdrCfg: false,
utils.TimezoneCfg: "",
utils.EvapiConnsCfg: []map[string]interface{}{
{utils.AddressCfg: "127.0.0.1:8448", utils.ReconnectsCfg: 5, utils.AliasCfg: ""},
{utils.AddressCfg: "127.0.0.1:8448", utils.ReconnectsCfg: 5, utils.MaxReconnectIntervalCfg: "0s", utils.AliasCfg: ""},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {

View File

@@ -77,12 +77,12 @@ func (fs *FsConnCfg) AsMapInterface() map[string]interface{} {
utils.AddressCfg: fs.Address,
utils.Password: fs.Password,
utils.ReconnectsCfg: fs.Reconnects,
utils.MaxReconnectIntervalCfg: fs.MaxReconnectInterval,
utils.MaxReconnectIntervalCfg: fs.MaxReconnectInterval.String(),
utils.AliasCfg: fs.Alias,
}
}
// Clone returns a deep copy of AsteriskAgentCfg
// Clone returns a deep copy of FsConnCfg
func (fs FsConnCfg) Clone() *FsConnCfg {
return &FsConnCfg{
Address: fs.Address,

View File

@@ -575,7 +575,7 @@ func TestFsAgentCfgAsMapInterfaceCase1(t *testing.T) {
utils.EmptyBalanceAnnFileCfg: "",
utils.MaxWaitConnectionCfg: "2s",
utils.EventSocketConnsCfg: []map[string]interface{}{
{utils.AddressCfg: "127.0.0.1:8021", utils.Password: "ClueCon", utils.ReconnectsCfg: 5, utils.AliasCfg: "127.0.0.1:8021"},
{utils.AddressCfg: "127.0.0.1:8021", utils.Password: "ClueCon", utils.ReconnectsCfg: 5, utils.MaxReconnectIntervalCfg: "0s", utils.AliasCfg: "127.0.0.1:8021"},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
@@ -608,7 +608,7 @@ func TestFsAgentCfgAsMapInterfaceCase2(t *testing.T) {
utils.EmptyBalanceAnnFileCfg: "",
utils.MaxWaitConnectionCfg: "7s",
utils.EventSocketConnsCfg: []map[string]interface{}{
{utils.AddressCfg: "127.0.0.1:8000", utils.Password: "ClueCon123", utils.ReconnectsCfg: 8, utils.AliasCfg: "127.0.0.1:8000"},
{utils.AddressCfg: "127.0.0.1:8000", utils.Password: "ClueCon123", utils.ReconnectsCfg: 8, utils.MaxReconnectIntervalCfg: "0s", utils.AliasCfg: "127.0.0.1:8000"},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
@@ -637,7 +637,7 @@ func TestFsAgentCfgAsMapInterfaceCase3(t *testing.T) {
utils.EmptyBalanceAnnFileCfg: "",
utils.MaxWaitConnectionCfg: "",
utils.EventSocketConnsCfg: []map[string]interface{}{
{utils.AddressCfg: "127.0.0.1:8021", utils.Password: "ClueCon", utils.ReconnectsCfg: 5, utils.AliasCfg: "127.0.0.1:8021"},
{utils.AddressCfg: "127.0.0.1:8021", utils.Password: "ClueCon", utils.ReconnectsCfg: 5, utils.MaxReconnectIntervalCfg: "0s", utils.AliasCfg: "127.0.0.1:8021"},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
@@ -750,7 +750,7 @@ func TestAsteriskAgentCfgAsMapInterface(t *testing.T) {
utils.SessionSConnsCfg: []string{utils.MetaInternal},
utils.CreateCdrCfg: false,
utils.AsteriskConnsCfg: []map[string]interface{}{
{utils.AliasCfg: "", utils.AddressCfg: "127.0.0.1:8088", utils.UserCf: "cgrates", utils.Password: "CGRateS.org", utils.ConnectAttemptsCfg: 3, utils.ReconnectsCfg: 5},
{utils.AliasCfg: "", utils.AddressCfg: "127.0.0.1:8088", utils.UserCf: "cgrates", utils.Password: "CGRateS.org", utils.ConnectAttemptsCfg: 3, utils.ReconnectsCfg: 5, utils.MaxReconnectIntervalCfg: "0s"},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
@@ -776,7 +776,7 @@ func TestAsteriskAgentCfgAsMapInterface1(t *testing.T) {
utils.SessionSConnsCfg: []string{rpcclient.BiRPCInternal, "*conn1", "*conn2"},
utils.CreateCdrCfg: true,
utils.AsteriskConnsCfg: []map[string]interface{}{
{utils.AliasCfg: "", utils.AddressCfg: "127.0.0.1:8089", utils.UserCf: "cgrates", utils.Password: "CGRateS.org", utils.ConnectAttemptsCfg: 5, utils.ReconnectsCfg: 8},
{utils.AliasCfg: "", utils.AddressCfg: "127.0.0.1:8089", utils.UserCf: "cgrates", utils.Password: "CGRateS.org", utils.ConnectAttemptsCfg: 5, utils.ReconnectsCfg: 8, utils.MaxReconnectIntervalCfg: "0s"},
},
}
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {

View File

@@ -1196,46 +1196,53 @@ func TestLoaderProcessDispatcheHosts(t *testing.T) {
Value: config.NewRSRParsersMustCompile("~*req.5", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "MaxReconnectInterval",
Path: "MaxReconnectInterval",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.6", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "ConnectTimeout",
Path: "ConnectTimeout",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.6", utils.InfieldSep),
Value: config.NewRSRParsersMustCompile("~*req.7", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "ReplyTimeout",
Path: "ReplyTimeout",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.7", utils.InfieldSep),
Value: config.NewRSRParsersMustCompile("~*req.8", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "TLS",
Path: "TLS",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.8", utils.InfieldSep),
Value: config.NewRSRParsersMustCompile("~*req.9", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "ClientKey",
Path: "ClientKey",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.9", utils.InfieldSep),
Value: config.NewRSRParsersMustCompile("~*req.10", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "ClientCertificate",
Path: "ClientCertificate",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.10", utils.InfieldSep),
Value: config.NewRSRParsersMustCompile("~*req.11", utils.InfieldSep),
Mandatory: true,
},
{
Tag: "CaCertificate",
Path: "CaCertificate",
Type: utils.MetaComposed,
Value: config.NewRSRParsersMustCompile("~*req.11", utils.InfieldSep),
Value: config.NewRSRParsersMustCompile("~*req.12", utils.InfieldSep),
Mandatory: true,
},
},
@@ -1261,14 +1268,15 @@ func TestLoaderProcessDispatcheHosts(t *testing.T) {
eDispHost := &engine.DispatcherHost{
Tenant: "cgrates.org",
RemoteHost: &config.RemoteHost{
ID: "ALL",
Address: "127.0.0.1:6012",
Transport: utils.MetaJSON,
ConnectAttempts: 1,
Reconnects: 3,
ConnectTimeout: 1 * time.Minute,
ReplyTimeout: 2 * time.Minute,
TLS: false,
ID: "ALL",
Address: "127.0.0.1:6012",
Transport: utils.MetaJSON,
ConnectAttempts: 1,
Reconnects: 3,
MaxReconnectInterval: 5 * time.Minute,
ConnectTimeout: 1 * time.Minute,
ReplyTimeout: 2 * time.Minute,
TLS: false,
},
}