mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Updated datadbcfg AsMapInterface method
This commit is contained in:
committed by
Dan Christian Bogos
parent
34ce1addab
commit
893c1af1d1
@@ -169,8 +169,12 @@ func (itm *ItemOpt) AsMapInterface() (initialMP map[string]interface{}) {
|
||||
initialMP = map[string]interface{}{
|
||||
utils.RemoteCfg: itm.Remote,
|
||||
utils.ReplicateCfg: itm.Replicate,
|
||||
utils.RouteID: itm.RouteID,
|
||||
utils.APIKey: itm.APIKey,
|
||||
}
|
||||
if itm.APIKey != utils.EmptyString {
|
||||
initialMP[utils.ApiKeyCfg] = itm.APIKey
|
||||
}
|
||||
if itm.RouteID != utils.EmptyString {
|
||||
initialMP[utils.RouteIDCfg] = itm.RouteID
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -403,9 +403,6 @@ func TestDataDbCfgloadFromJsonCfgItems(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestDataDbCfgAsMapInterface(t *testing.T) {
|
||||
var dbcfg DataDbCfg
|
||||
dbcfg.Opts = make(map[string]interface{})
|
||||
dbcfg.Items = make(map[string]*ItemOpt)
|
||||
cfgJSONStr := `{
|
||||
"data_db": {
|
||||
"db_type": "*redis",
|
||||
@@ -421,27 +418,27 @@ func TestDataDbCfgAsMapInterface(t *testing.T) {
|
||||
"remote_conns":[],
|
||||
"replication_conns":[],
|
||||
"items":{
|
||||
"*accounts":{"remote":true, "replicate":false},
|
||||
"*reverse_destinations": {"remote":false, "replicate":false},
|
||||
"*accounts":{"remote":true, "replicate":false, "api_key": "randomVal", "route_id": "randomVal"},
|
||||
"*reverse_destinations": {"remote":false, "replicate":false, "api_key": "randomVal", "route_id": "randomVal"},
|
||||
},
|
||||
},
|
||||
}`
|
||||
eMap := map[string]interface{}{
|
||||
"db_type": "*redis",
|
||||
"db_host": "127.0.0.1",
|
||||
"db_port": 6379,
|
||||
"db_name": "10",
|
||||
"db_user": "cgrates",
|
||||
"db_password": "",
|
||||
"opts": map[string]interface{}{
|
||||
"redis_sentinel": "",
|
||||
"query_timeout": "10s",
|
||||
utils.DataDbTypeCfg: "*redis",
|
||||
utils.DataDbHostCfg: "127.0.0.1",
|
||||
utils.DataDbPortCfg: 6379,
|
||||
utils.DataDbNameCfg: "10",
|
||||
utils.DataDbUserCfg: "cgrates",
|
||||
utils.DataDbPassCfg: "",
|
||||
utils.OptsCfg: map[string]interface{}{
|
||||
utils.RedisSentinelNameCfg: "",
|
||||
utils.QueryTimeoutCfg: "10s",
|
||||
},
|
||||
"remote_conns": []string{},
|
||||
"replication_conns": []string{},
|
||||
"items": map[string]interface{}{
|
||||
"*accounts": map[string]interface{}{"remote": true, "replicate": false, "ApiKey": "", "RouteID": ""},
|
||||
"*reverse_destinations": map[string]interface{}{"remote": false, "replicate": false, "ApiKey": "", "RouteID": ""},
|
||||
utils.RemoteConnsCfg: []string{},
|
||||
utils.ReplicationConnsCfg: []string{},
|
||||
utils.ItemsCfg: map[string]interface{}{
|
||||
utils.MetaAccounts: map[string]interface{}{utils.RemoteCfg: true, utils.ReplicateCfg: false, utils.ApiKeyCfg: "randomVal", utils.RouteIDCfg: "randomVal"},
|
||||
utils.MetaReverseDestinations: map[string]interface{}{utils.RemoteCfg: false, utils.ReplicateCfg: false, utils.ApiKeyCfg: "randomVal", utils.RouteIDCfg: "randomVal"},
|
||||
},
|
||||
}
|
||||
if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil {
|
||||
@@ -461,24 +458,4 @@ func TestDataDbCfgAsMapInterface(t *testing.T) {
|
||||
rcv[utils.ItemsCfg].(map[string]interface{})[utils.MetaReverseDestinations])
|
||||
}
|
||||
}
|
||||
|
||||
/*if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil {
|
||||
t.Error(err)
|
||||
} else if rcv := cgrCfg.dataDbCfg.AsMapInterface(); !reflect.DeepEqual(rcv, eMap) {
|
||||
t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
if jsnCfg, err := NewCgrJsonCfgFromBytes([]byte(cfgJSONStr)); err != nil {
|
||||
t.Error(err)
|
||||
} else if jsnDataDbCfg, err := jsnCfg.DbJsonCfg(DATADB_JSN); err != nil {
|
||||
t.Error(err)
|
||||
} else if err = dbcfg.loadFromJsonCfg(jsnDataDbCfg); err != nil {
|
||||
t.Error(err)
|
||||
} else if rcv, err := dbcfg.AsMapInterface(); err != nil {
|
||||
t.Error(err)
|
||||
} else if !reflect.DeepEqual(eMap, rcv) {
|
||||
t.Errorf("Expected %+v, recieved %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -187,8 +187,8 @@ func TestStorDbCfgAsMapInterface(t *testing.T) {
|
||||
"sslmode": "disable",
|
||||
},
|
||||
"items": map[string]interface{}{
|
||||
"session_costs": map[string]interface{}{"remote": false, "replicate": false, "ApiKey": "", "RouteID": ""},
|
||||
"cdrs": map[string]interface{}{"remote": false, "replicate": false, "ApiKey": "", "RouteID": ""},
|
||||
"session_costs": map[string]interface{}{"remote": false, "replicate": false},
|
||||
"cdrs": map[string]interface{}{"remote": false, "replicate": false},
|
||||
},
|
||||
}
|
||||
if jsnCfg, err := NewCgrJsonCfgFromBytes([]byte(cfgJSONStr)); err != nil {
|
||||
|
||||
@@ -1914,6 +1914,8 @@ const (
|
||||
|
||||
// ItemOpt
|
||||
const (
|
||||
ApiKeyCfg = "api_key"
|
||||
RouteIDCfg = "route_id"
|
||||
RemoteCfg = "remote"
|
||||
ReplicateCfg = "replicate"
|
||||
TTLCfg = "ttl"
|
||||
@@ -1999,6 +2001,7 @@ const (
|
||||
RouteSConnsCfg = "routes_conns"
|
||||
AttrSConnsCfg = "attributes_conns"
|
||||
ReplicationConnsCfg = "replication_conns"
|
||||
RemoteConnsCfg = "remote_conns"
|
||||
DebitIntervalCfg = "debit_interval"
|
||||
StoreSCostsCfg = "store_session_costs"
|
||||
MinCallDurationCfg = "min_call_duration"
|
||||
|
||||
Reference in New Issue
Block a user