mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Updated httpcfg AsMapINterface method
This commit is contained in:
committed by
Dan Christian Bogos
parent
dda7c1524e
commit
3c72966aa0
@@ -60,19 +60,22 @@ func (httpcfg *HTTPCfg) loadFromJsonCfg(jsnHttpCfg *HTTPJsonCfg) (err error) {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (httpcfg *HTTPCfg) AsMapInterface() map[string]interface{} {
|
||||
httpUsers := make(map[string]interface{}, len(httpcfg.HTTPAuthUsers))
|
||||
for key, item := range httpcfg.HTTPAuthUsers {
|
||||
httpUsers[key] = item
|
||||
}
|
||||
|
||||
return map[string]interface{}{
|
||||
func (httpcfg *HTTPCfg) AsMapInterface() (initialMP map[string]interface{}) {
|
||||
initialMP = map[string]interface{}{
|
||||
utils.HTTPJsonRPCURLCfg: httpcfg.HTTPJsonRPCURL,
|
||||
utils.DispatchersRegistrarURLCfg: httpcfg.DispatchersRegistrarURL,
|
||||
utils.HTTPWSURLCfg: httpcfg.HTTPWSURL,
|
||||
utils.HTTPFreeswitchCDRsURLCfg: httpcfg.HTTPFreeswitchCDRsURL,
|
||||
utils.HTTPCDRsURLCfg: httpcfg.HTTPCDRsURL,
|
||||
utils.HTTPUseBasicAuthCfg: httpcfg.HTTPUseBasicAuth,
|
||||
utils.HTTPAuthUsersCfg: httpUsers,
|
||||
}
|
||||
|
||||
if httpcfg.HTTPAuthUsers != nil {
|
||||
httpUsers := make(map[string]interface{}, len(httpcfg.HTTPAuthUsers))
|
||||
for key, item := range httpcfg.HTTPAuthUsers {
|
||||
httpUsers[key] = item
|
||||
}
|
||||
initialMP[utils.HTTPAuthUsersCfg] = httpUsers
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -66,36 +66,49 @@ func TestHTTPCfgloadFromJsonCfg(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestHTTPCfgAsMapInterface(t *testing.T) {
|
||||
var httpcfg HTTPCfg
|
||||
cfgJSONStr := `{
|
||||
"http": {
|
||||
"json_rpc_url": "/jsonrpc",
|
||||
"dispatchers_registrar_url": "/dispatchers_registrar",
|
||||
"ws_url": "/ws",
|
||||
"freeswitch_cdrs_url": "/freeswitch_json",
|
||||
"http_cdrs": "/cdr_http",
|
||||
"use_basic_auth": false,
|
||||
"auth_users": {},
|
||||
},
|
||||
"http": {},
|
||||
}`
|
||||
|
||||
eMap := map[string]interface{}{
|
||||
"json_rpc_url": "/jsonrpc",
|
||||
"dispatchers_registrar_url": "/dispatchers_registrar",
|
||||
"ws_url": "/ws",
|
||||
"freeswitch_cdrs_url": "/freeswitch_json",
|
||||
"http_cdrs": "/cdr_http",
|
||||
"use_basic_auth": false,
|
||||
"auth_users": map[string]interface{}{},
|
||||
utils.HTTPJsonRPCURLCfg: "/jsonrpc",
|
||||
utils.DispatchersRegistrarURLCfg: "/dispatchers_registrar",
|
||||
utils.HTTPWSURLCfg: "/ws",
|
||||
utils.HTTPFreeswitchCDRsURLCfg: "/freeswitch_json",
|
||||
utils.HTTPCDRsURLCfg: "/cdr_http",
|
||||
utils.HTTPUseBasicAuthCfg: false,
|
||||
utils.HTTPAuthUsersCfg: map[string]interface{}{},
|
||||
}
|
||||
|
||||
if jsnCfg, err := NewCgrJsonCfgFromBytes([]byte(cfgJSONStr)); err != nil {
|
||||
if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil {
|
||||
t.Error(err)
|
||||
} else if jsnhttpCfg, err := jsnCfg.HttpJsonCfg(); err != nil {
|
||||
t.Error(err)
|
||||
} else if err = httpcfg.loadFromJsonCfg(jsnhttpCfg); err != nil {
|
||||
t.Error(err)
|
||||
} else if rcv := httpcfg.AsMapInterface(); !reflect.DeepEqual(eMap, rcv) {
|
||||
t.Errorf("Expected: %+v ,\n recived: %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
|
||||
} else if rcv := cgrCfg.httpCfg.AsMapInterface(); !reflect.DeepEqual(rcv, eMap) {
|
||||
t.Errorf("Expected %+v, received %+v", eMap, rcv)
|
||||
}
|
||||
}
|
||||
|
||||
func TestHTTPCfgAsMapInterface1(t *testing.T) {
|
||||
cfgJSONStr := `{
|
||||
"http": {
|
||||
"json_rpc_url": "/rpc",
|
||||
"ws_url": "",
|
||||
"use_basic_auth": true,
|
||||
"auth_users": {"user1": "authenticated", "user2": "authenticated"},
|
||||
},
|
||||
}`
|
||||
eMap := map[string]interface{}{
|
||||
utils.HTTPJsonRPCURLCfg: "/rpc",
|
||||
utils.DispatchersRegistrarURLCfg: "/dispatchers_registrar",
|
||||
utils.HTTPWSURLCfg: "",
|
||||
utils.HTTPFreeswitchCDRsURLCfg: "/freeswitch_json",
|
||||
utils.HTTPCDRsURLCfg: "/cdr_http",
|
||||
utils.HTTPUseBasicAuthCfg: true,
|
||||
utils.HTTPAuthUsersCfg: map[string]interface{}{
|
||||
"user1": "authenticated",
|
||||
"user2": "authenticated",
|
||||
},
|
||||
}
|
||||
if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil {
|
||||
t.Error(err)
|
||||
} else if rcv := cgrCfg.httpCfg.AsMapInterface(); !reflect.DeepEqual(rcv, eMap) {
|
||||
t.Errorf("Expected %+v, received %+v", eMap, rcv)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user