Updated loadercgrcfg AsMapInterface method

This commit is contained in:
porosnicuadrian
2020-09-22 12:29:30 +03:00
committed by Dan Christian Bogos
parent 426abac7f2
commit 629ffc1267
2 changed files with 25 additions and 44 deletions

View File

@@ -83,25 +83,20 @@ func (ld *LoaderCgrCfg) loadFromJsonCfg(jsnCfg *LoaderCfgJson) (err error) {
return nil
}
func (ld *LoaderCgrCfg) AsMapInterface() map[string]interface{} {
gapiCredentials := make([]byte, len(ld.GapiCredentials))
for i, item := range ld.GapiCredentials {
gapiCredentials[i] = item
func (ld *LoaderCgrCfg) AsMapInterface() (initialMP map[string]interface{}) {
initialMP = map[string]interface{}{
utils.TpIDCfg: ld.TpID,
utils.DataPathCfg: ld.DataPath,
utils.DisableReverseCfg: ld.DisableReverse,
utils.FieldSeparatorCfg: string(ld.FieldSeparator),
utils.CachesConnsCfg: ld.CachesConns,
utils.SchedulerConnsCfg: ld.SchedulerConns,
}
gapiToken := make([]byte, len(ld.GapiToken))
for i, item := range ld.GapiToken {
gapiToken[i] = item
if ld.GapiCredentials != nil {
initialMP[utils.GapiCredentialsCfg] = ld.GapiCredentials
}
return map[string]interface{}{
utils.TpIDCfg: ld.TpID,
utils.DataPathCfg: ld.DataPath,
utils.DisableReverseCfg: ld.DisableReverse,
utils.FieldSeparatorCfg: string(ld.FieldSeparator),
utils.CachesConnsCfg: ld.CachesConns,
utils.SchedulerConnsCfg: ld.SchedulerConns,
utils.GapiCredentialsCfg: gapiCredentials,
utils.GapiTokenCfg: gapiToken,
if ld.GapiToken != nil {
initialMP[utils.GapiTokenCfg] = ld.GapiToken
}
return
}

View File

@@ -18,6 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>
package config
import (
"encoding/json"
"reflect"
"testing"
@@ -63,7 +64,6 @@ func TestLoaderCgrCfgloadFromJsonCfg(t *testing.T) {
}
func TestLoaderCgrCfgAsMapInterface(t *testing.T) {
var loadscfg LoaderCgrCfg
cfgJSONStr := `{
"loader": {
"tpid": "",
@@ -77,32 +77,18 @@ func TestLoaderCgrCfgAsMapInterface(t *testing.T) {
},
}`
eMap := map[string]interface{}{
"tpid": "",
"data_path": "./",
"disable_reverse": false,
"field_separator": ",",
"caches_conns": []string{"*localhost"},
"scheduler_conns": []string{"*localhost"},
"gapi_credentials": ".gapi/credentials.json",
"gapi_token": ".gapi/token.json",
utils.TpIDCfg: "",
utils.DataPathCfg: "./",
utils.DisableReverseCfg: false,
utils.FieldSeparatorCfg: ",",
utils.CachesConnsCfg: []string{"*localhost"},
utils.SchedulerConnsCfg: []string{"*localhost"},
utils.GapiCredentialsCfg: json.RawMessage(`".gapi/credentials.json"`),
utils.GapiTokenCfg: json.RawMessage(`".gapi/token.json"`),
}
if jsnCfg, err := NewCgrJsonCfgFromBytes([]byte(cfgJSONStr)); err != nil {
if cgrCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil {
t.Error(err)
} else if jsnLoadersCfg, err := jsnCfg.LoaderCfgJson(); err != nil {
t.Error(err)
} else if err = loadscfg.loadFromJsonCfg(jsnLoadersCfg); err != nil {
t.Error(err)
} else if rcv := loadscfg.AsMapInterface(); !reflect.DeepEqual(eMap["tpid"], rcv["tpid"]) {
t.Errorf("Expected: %+v, Recived: %+v, at field: '%s'", utils.ToJSON(eMap["tpid"]), utils.ToJSON(rcv["tpid"]), "tpid")
} else if !reflect.DeepEqual(eMap["data_path"], rcv["data_path"]) {
t.Errorf("Expected: %+v, Recived: %+v, at field: %s", utils.ToJSON(eMap["data_path"]), utils.ToJSON(rcv["data_path"]), "data_path")
} else if !reflect.DeepEqual(eMap["disable_reverse"], rcv["disable_reverse"]) {
t.Errorf("Expected: %+v, Recived: %+v, at field: %s", utils.ToJSON(eMap["disable_reverse"]), utils.ToJSON(rcv["disable_reverse"]), "disable_reverse")
} else if !reflect.DeepEqual(eMap["field_separator"], rcv["field_separator"]) {
t.Errorf("Expected: %+v, Recived: %+v, at field: %s", utils.ToJSON(eMap["field_separator"]), utils.ToJSON(rcv["field_separator"]), "field_separator")
} else if !reflect.DeepEqual(eMap["caches_conns"], rcv["caches_conns"]) {
t.Errorf("Expected: %+v, Recived: %+v, at field: %s", utils.ToJSON(eMap["caches_conns"]), utils.ToJSON(rcv["caches_conns"]), "caches_conns")
} else if !reflect.DeepEqual(eMap["scheduler_conns"], rcv["scheduler_conns"]) {
t.Errorf("Expected: %+v, Recived: %+v, at field: %s", utils.ToJSON(eMap["scheduler_conns"]), utils.ToJSON(rcv["scheduler_conns"]), "scheduler_conns")
} else if rcv := cgrCfg.loaderCgrCfg.AsMapInterface(); !reflect.DeepEqual(rcv, eMap) {
t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
}
}