From 7bc822a64379573409ab090c31961c8b35e1ad29 Mon Sep 17 00:00:00 2001 From: porosnicuadrian Date: Tue, 6 Oct 2020 16:08:35 +0300 Subject: [PATCH] Covered to 100% migratorcfg and radiuscfg --- config/migratorcfg_test.go | 8 ++++-- config/radiuscfg_test.go | 52 +++++++++++++++++++++++++++++++++++++- 2 files changed, 57 insertions(+), 3 deletions(-) diff --git a/config/migratorcfg_test.go b/config/migratorcfg_test.go index 3b4615914..0e8d5b522 100644 --- a/config/migratorcfg_test.go +++ b/config/migratorcfg_test.go @@ -43,7 +43,9 @@ func TestMigratorCgrCfgloadFromJsonCfg(t *testing.T) { utils.RedisClusterCfg: true, utils.ClusterSyncCfg: "10s", }, - Out_storDB_opts: map[string]interface{}{}, + Out_storDB_opts: map[string]interface{}{ + utils.RedisClusterCfg: true, + }, } expected := &MigratorCgrCfg{ OutDataDBType: utils.REDIS, @@ -65,7 +67,9 @@ func TestMigratorCgrCfgloadFromJsonCfg(t *testing.T) { utils.ClusterSyncCfg: "10s", utils.ClusterOnDownDelayCfg: "0", }, - OutStorDBOpts: map[string]interface{}{}, + OutStorDBOpts: map[string]interface{}{ + utils.RedisClusterCfg: true, + }, } if cfgJson, err := NewDefaultCGRConfig(); err != nil { t.Error(err) diff --git a/config/radiuscfg_test.go b/config/radiuscfg_test.go index 6960b9d4f..cd53c01a1 100644 --- a/config/radiuscfg_test.go +++ b/config/radiuscfg_test.go @@ -25,7 +25,7 @@ import ( "github.com/cgrates/cgrates/utils" ) -func TestRadiusAgentCfgloadFromJsonCfg(t *testing.T) { +func TestRadiusAgentCfgloadFromJsonCfgCase1(t *testing.T) { cfgJSON := &RadiusAgentJsonCfg{ Enabled: utils.BoolPointer(true), Listen_net: utils.StringPointer(utils.UDP), @@ -96,6 +96,56 @@ func TestRadiusAgentCfgloadFromJsonCfg(t *testing.T) { } } +func TestRadiusAgentCfgloadFromJsonCfgCase2(t *testing.T) { + cfgJSONStr := `{ + "radius_agent": { + "request_processors": [ + { + "id": "OutboundAUTHDryRun", + }, + ], + }, +}` + cfgJSON := &RadiusAgentJsonCfg{ + Request_processors: &[]*ReqProcessorJsnCfg{ + { + ID: utils.StringPointer("OutboundAUTHDryRun"), + }, + }, + } + expected := &RadiusAgentCfg{ + RequestProcessors: []*RequestProcessor{ + { + ID: "OutboundAUTHDryRun", + }, + }, + } + if jsonCfg, err := NewCGRConfigFromJsonStringWithDefaults(cfgJSONStr); err != nil { + t.Error(err) + } else if err = jsonCfg.radiusAgentCfg.loadFromJsonCfg(cfgJSON, jsonCfg.generalCfg.RSRSep); err != nil { + t.Error(err) + } else if !reflect.DeepEqual(jsonCfg.radiusAgentCfg.RequestProcessors[0].ID, expected.RequestProcessors[0].ID) { + t.Errorf("Expected %+v, received %+v", utils.ToJSON(jsonCfg.radiusAgentCfg.RequestProcessors[0].ID), + utils.ToJSON(expected.RequestProcessors[0].ID)) + } +} + +func TestRadiusAgentCfgloadFromJsonCfgCase3(t *testing.T) { + cfgJSON := &RadiusAgentJsonCfg{ + Request_processors: &[]*ReqProcessorJsnCfg{ + { + Tenant: utils.StringPointer("a{*"), + }, + }, + } + expected := "invalid converter terminator in rule: " + if jsonCfg, err := NewDefaultCGRConfig(); err != nil { + t.Error(err) + } else if err = jsonCfg.radiusAgentCfg.loadFromJsonCfg(cfgJSON, jsonCfg.generalCfg.RSRSep); err == nil || err.Error() != expected { + t.Errorf("Expected %+v, received %+v", expected, err) + } +} + func TestRadiusAgentCfgAsMapInterface(t *testing.T) { cfgJSONStr := `{ "radius_agent": {