mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Update apiercfg AsMapInterface method
This commit is contained in:
committed by
Dan Christian Bogos
parent
e2db68d966
commit
7fc624a45e
@@ -84,44 +84,56 @@ func (aCfg *ApierCfg) loadFromJsonCfg(jsnCfg *ApierJsonCfg) (err error) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (aCfg *ApierCfg) AsMapInterface() map[string]interface{} {
|
||||
cachesConns := make([]string, len(aCfg.CachesConns))
|
||||
for i, item := range aCfg.CachesConns {
|
||||
buf := utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches)
|
||||
if item == buf {
|
||||
cachesConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaCaches, utils.EmptyString)
|
||||
} else {
|
||||
cachesConns[i] = item
|
||||
func (aCfg *ApierCfg) AsMapInterface() (initialMap map[string]interface{}) {
|
||||
initialMap = map[string]interface{}{
|
||||
utils.EnabledCfg: aCfg.Enabled,
|
||||
}
|
||||
if aCfg.CachesConns != nil {
|
||||
cachesConns := make([]string, len(aCfg.CachesConns))
|
||||
for i, item := range aCfg.CachesConns {
|
||||
if item == utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCaches) {
|
||||
cachesConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaCaches, utils.EmptyString)
|
||||
} else {
|
||||
cachesConns[i] = item
|
||||
}
|
||||
}
|
||||
initialMap[utils.CachesConnsCfg] = cachesConns
|
||||
}
|
||||
schedulerConns := make([]string, len(aCfg.SchedulerConns))
|
||||
for i, item := range aCfg.SchedulerConns {
|
||||
buf := utils.ConcatenatedKey(utils.MetaInternal, utils.MetaScheduler)
|
||||
if item == buf {
|
||||
schedulerConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaScheduler, utils.EmptyString)
|
||||
} else {
|
||||
schedulerConns[i] = item
|
||||
if aCfg.SchedulerConns != nil {
|
||||
schedulerConns := make([]string, len(aCfg.SchedulerConns))
|
||||
for i, item := range aCfg.SchedulerConns {
|
||||
if item == utils.ConcatenatedKey(utils.MetaInternal, utils.MetaScheduler) {
|
||||
schedulerConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaScheduler, utils.EmptyString)
|
||||
} else {
|
||||
schedulerConns[i] = item
|
||||
}
|
||||
}
|
||||
initialMap[utils.SchedulerConnsCfg] = schedulerConns
|
||||
}
|
||||
attributeSConns := make([]string, len(aCfg.AttributeSConns))
|
||||
for i, item := range aCfg.AttributeSConns {
|
||||
buf := utils.ConcatenatedKey(utils.MetaInternal, utils.MetaAttributes)
|
||||
if item == buf {
|
||||
attributeSConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaAttributes, utils.EmptyString)
|
||||
} else {
|
||||
attributeSConns[i] = item
|
||||
if aCfg.AttributeSConns != nil {
|
||||
attributeSConns := make([]string, len(aCfg.AttributeSConns))
|
||||
for i, item := range aCfg.AttributeSConns {
|
||||
if item == utils.ConcatenatedKey(utils.MetaInternal, utils.MetaAttributes) {
|
||||
attributeSConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaAttributes, utils.EmptyString)
|
||||
} else {
|
||||
attributeSConns[i] = item
|
||||
}
|
||||
}
|
||||
initialMap[utils.AttributeSConnsCfg] = attributeSConns
|
||||
}
|
||||
|
||||
return map[string]interface{}{
|
||||
utils.EnabledCfg: aCfg.Enabled,
|
||||
utils.CachesConnsCfg: cachesConns,
|
||||
utils.SchedulerConnsCfg: schedulerConns,
|
||||
utils.AttributeSConnsCfg: attributeSConns,
|
||||
if aCfg.EEsConns != nil {
|
||||
eesConns := make([]string, len(aCfg.EEsConns))
|
||||
for i, item := range aCfg.EEsConns {
|
||||
if item == utils.ConcatenatedKey(utils.MetaInternal, utils.MetaEEs) {
|
||||
eesConns[i] = strings.ReplaceAll(item, utils.CONCATENATED_KEY_SEP+utils.MetaEEs, utils.EmptyString)
|
||||
} else {
|
||||
eesConns[i] = item
|
||||
}
|
||||
}
|
||||
initialMap[utils.EEsConnsCfg] = eesConns
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
@@ -61,53 +61,45 @@ func TestApierCfgloadFromJsonCfg(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestApierCfgAsMapInterface(t *testing.T) {
|
||||
var aCfg ApierCfg
|
||||
func TestApierCfgAsMapInterface1(t *testing.T) {
|
||||
cfgJSONStr := `{
|
||||
"apiers": {
|
||||
"enabled": false,
|
||||
"caches_conns":[],
|
||||
"scheduler_conns": [],
|
||||
"attributes_conns": [],
|
||||
},
|
||||
}`
|
||||
sls := make([]string, 0)
|
||||
eMap := map[string]interface{}{
|
||||
"enabled": false,
|
||||
"caches_conns": []string{},
|
||||
"scheduler_conns": []string{},
|
||||
"attributes_conns": []string{},
|
||||
utils.EnabledCfg: false,
|
||||
utils.CachesConnsCfg: sls,
|
||||
utils.SchedulerConnsCfg: sls,
|
||||
utils.AttributeSConnsCfg: sls,
|
||||
utils.EEsConnsCfg: sls,
|
||||
}
|
||||
if jsnCfg, err := NewCgrJsonCfgFromBytes([]byte(cfgJSONStr)); err != nil {
|
||||
if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil {
|
||||
t.Error(err)
|
||||
} else if jsnaCfg, err := jsnCfg.ApierCfgJson(); err != nil {
|
||||
t.Error(err)
|
||||
} else if err = aCfg.loadFromJsonCfg(jsnaCfg); err != nil {
|
||||
t.Error(err)
|
||||
} else if rcv := aCfg.AsMapInterface(); !reflect.DeepEqual(eMap, rcv) {
|
||||
t.Errorf("\nExpected: %+v\nRecived: %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
|
||||
}
|
||||
|
||||
cfgJSONStr = `{
|
||||
"apiers": {
|
||||
"enabled": false,
|
||||
"caches_conns":["*internal"],
|
||||
"scheduler_conns": ["*internal"],
|
||||
"attributes_conns": ["*internal"],
|
||||
},
|
||||
}`
|
||||
eMap = map[string]interface{}{
|
||||
"enabled": false,
|
||||
"caches_conns": []string{"*internal"},
|
||||
"scheduler_conns": []string{"*internal"},
|
||||
"attributes_conns": []string{"*internal"},
|
||||
}
|
||||
if jsnCfg, err := NewCgrJsonCfgFromBytes([]byte(cfgJSONStr)); err != nil {
|
||||
t.Error(err)
|
||||
} else if jsnaCfg, err := jsnCfg.ApierCfgJson(); err != nil {
|
||||
t.Error(err)
|
||||
} else if err = aCfg.loadFromJsonCfg(jsnaCfg); err != nil {
|
||||
t.Error(err)
|
||||
} else if rcv := aCfg.AsMapInterface(); !reflect.DeepEqual(eMap, rcv) {
|
||||
t.Errorf("\nExpected: %+v\nRecived: %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
|
||||
} else if newMap := cgrCfg.apier.AsMapInterface(); !reflect.DeepEqual(newMap, eMap) {
|
||||
t.Errorf("Expected %+v, recived %+v", eMap, newMap)
|
||||
}
|
||||
}
|
||||
|
||||
func TestApierCfgAsMapInterface2(t *testing.T) {
|
||||
myJSONStr := `{
|
||||
"apiers": {
|
||||
"enabled": true,
|
||||
"attributes_conns": ["conn1", "conn2"],
|
||||
"ees_conns": ["*internal"],
|
||||
},
|
||||
}`
|
||||
expectedMap := map[string]interface{}{
|
||||
utils.EnabledCfg: true,
|
||||
utils.CachesConnsCfg: []string{"*internal"},
|
||||
utils.SchedulerConnsCfg: []string{},
|
||||
utils.AttributeSConnsCfg: []string{"conn1", "conn2"},
|
||||
utils.EEsConnsCfg: []string{"*internal"},
|
||||
}
|
||||
if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(myJSONStr); err != nil {
|
||||
t.Error(err)
|
||||
} else if newMap := cgrCfg.apier.AsMapInterface(); !reflect.DeepEqual(expectedMap, newMap) {
|
||||
t.Errorf("Expected %+v, recived %+v", expectedMap, newMap)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1878,6 +1878,7 @@ const (
|
||||
MaxParallelConnsCfg = "max_parallel_conns"
|
||||
ConcurrentRequestsCfg = "concurrent_requests"
|
||||
ConcurrentStrategyCfg = "concurrent_strategy"
|
||||
EEsConnsCfg = "ees_conns"
|
||||
)
|
||||
|
||||
// StorDbCfg
|
||||
|
||||
Reference in New Issue
Block a user