From 24dde0f3517a5bb4f83507a5a5e1644fea9419ac Mon Sep 17 00:00:00 2001 From: NikolasPetriti Date: Thu, 7 Sep 2023 16:27:17 +0200 Subject: [PATCH] Add coverage tests for config --- config/cdrscfg_test.go | 24 ++++++++ config/configdbcfg_test.go | 17 ++++++ config/erscfg_test.go | 103 +++++++++++++++++++++++++++++++++++ config/sentrypeercfg_test.go | 39 +++++++++++++ 4 files changed, 183 insertions(+) diff --git a/config/cdrscfg_test.go b/config/cdrscfg_test.go index 4a775ab09..9d2ff1659 100644 --- a/config/cdrscfg_test.go +++ b/config/cdrscfg_test.go @@ -551,3 +551,27 @@ func TestCdrsCfgCloneSection(t *testing.T) { t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv)) } } + +func TestCdrsCfgdiffCdrsJsonCfg(t *testing.T) { + coj := &CdrsOptsJson{} + co := &CdrsOpts{} + bl := true + d := &CdrsJsonCfg{} + v2 := &CdrsCfg{ + StoreCdrs: true, + Opts: co, + } + v1 := &CdrsCfg{ + StoreCdrs: false, + Opts: co, + } + exp := &CdrsJsonCfg{ + Store_cdrs: &bl, + Opts: coj, + } + rcv := diffCdrsJsonCfg(d, v1, v2) + + if !reflect.DeepEqual(exp, rcv) { + t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv)) + } +} diff --git a/config/configdbcfg_test.go b/config/configdbcfg_test.go index 630627c1d..04556c903 100644 --- a/config/configdbcfg_test.go +++ b/config/configdbcfg_test.go @@ -34,3 +34,20 @@ func TestConfigDBOptsInvalid(t *testing.T) { } } + +func TestConfigDBCfgloadFromJSONCfg(t *testing.T) { + str := "test" + dbcfg := &ConfigDBCfg{} + jsnDbCfg := &DbJsonCfg{ + Db_type: &str, + } + + err := dbcfg.loadFromJSONCfg(jsnDbCfg) + if err != nil { + t.Error(err) + } + + if dbcfg.Type != "*test" { + t.Error(dbcfg.Type) + } +} diff --git a/config/erscfg_test.go b/config/erscfg_test.go index 67f8fee3e..eb3b378c9 100644 --- a/config/erscfg_test.go +++ b/config/erscfg_test.go @@ -2478,3 +2478,106 @@ func TestDiffEventReaderOptsJsonCfg(t *testing.T) { t.Errorf("Expected %v \n but received \n %v", exp, rcv) } } + +func TestErsCfgloadFromJSONCfg(t *testing.T) { + str := "test" + jsnCfg := &EventReaderOptsJson{ + AMQPUsername: &str, + AMQPPassword: &str, + AMQPUsernameProcessed: &str, + AMQPPasswordProcessed: &str, + } + erOpts := &EventReaderOpts{} + exp := &EventReaderOpts{ + AMQPUsername: &str, + AMQPPassword: &str, + AMQPUsernameProcessed: &str, + AMQPPasswordProcessed: &str, + } + + err := erOpts.loadFromJSONCfg(jsnCfg) + if err != nil { + t.Error(err) + } + + if !reflect.DeepEqual(exp, erOpts) { + t.Errorf("\nexpecting: %s\nreceived: %s\n", utils.ToJSON(exp), utils.ToJSON(erOpts)) + } +} + +func TestErsCfgloadClone(t *testing.T) { + str := "test" + erOpts := &EventReaderOpts{ + AMQPUsername: &str, + AMQPPassword: &str, + AMQPUsernameProcessed: &str, + AMQPPasswordProcessed: &str, + } + + rcv := erOpts.Clone() + + if !reflect.DeepEqual(erOpts, rcv) { + t.Errorf("\nexpecting: %s\nreceived: %s\n", utils.ToJSON(erOpts), utils.ToJSON(rcv)) + } +} + +func TestErsCfgAsMapInterface(t *testing.T) { + str := "test" + erOpts := &EventReaderOpts{ + AMQPUsername: &str, + AMQPPassword: &str, + AMQPUsernameProcessed: &str, + AMQPPasswordProcessed: &str, + } + er := &EventReaderCfg{ + Opts: erOpts, + } + opts := map[string]any{ + utils.AMQPUsername: str, + utils.AMQPPassword: str, + utils.AMQPUsernameProcessedCfg: str, + utils.AMQPPasswordProcessedCfg: str, + } + exp := map[string]any{ + utils.IDCfg: er.ID, + utils.TypeCfg: er.Type, + utils.ConcurrentRequestsCfg: er.ConcurrentReqs, + utils.SourcePathCfg: er.SourcePath, + utils.ProcessedPathCfg: er.ProcessedPath, + utils.TenantCfg: er.Tenant.GetRule(""), + utils.TimezoneCfg: er.Timezone, + utils.FiltersCfg: er.Filters, + utils.FlagsCfg: []string{}, + utils.RunDelayCfg: "0", + utils.OptsCfg: opts, + } + rcv := er.AsMapInterface("") + + if !reflect.DeepEqual(exp, rcv) { + t.Errorf("\nexpecting %s\nreceived %s\n", utils.ToJSON(exp), utils.ToJSON(rcv)) + } +} + +func TestErsCfgdiffEventReaderOptsJsonCfg(t *testing.T) { + str := "test" + d := &EventReaderOptsJson{} + v2 := &EventReaderOpts{ + AMQPUsername: &str, + AMQPPassword: &str, + AMQPUsernameProcessed: &str, + AMQPPasswordProcessed: &str, + } + v1 := &EventReaderOpts{} + exp := &EventReaderOptsJson{ + AMQPUsername: &str, + AMQPPassword: &str, + AMQPUsernameProcessed: &str, + AMQPPasswordProcessed: &str, + } + + rcv := diffEventReaderOptsJsonCfg(d, v1, v2) + + if !reflect.DeepEqual(exp, rcv) { + t.Errorf("\nexpecting %s\nreceived %s\n", utils.ToJSON(exp), utils.ToJSON(rcv)) + } +} diff --git a/config/sentrypeercfg_test.go b/config/sentrypeercfg_test.go index 2807819a8..3f63ae2e4 100644 --- a/config/sentrypeercfg_test.go +++ b/config/sentrypeercfg_test.go @@ -154,3 +154,42 @@ func TestSentryPeerCloneSection(t *testing.T) { t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv)) } } + +func TestSentryPeerdiffSentryPeerJsonCfg(t *testing.T) { + str := "test" + str2 := "test2" + d := &SentryPeerJsonCfg{} + v2 := &SentryPeerCfg{ + ClientID: str, + ClientSecret: str, + TokenUrl: str, + IpsUrl: str, + NumbersUrl: str, + Audience: str, + GrantType: str, + } + v1 := &SentryPeerCfg{ + ClientID: str2, + ClientSecret: str2, + TokenUrl: str2, + IpsUrl: str2, + NumbersUrl: str2, + Audience: str2, + GrantType: str2, + } + exp := &SentryPeerJsonCfg{ + Client_id: &str, + Client_secret: &str, + Token_url: &str, + Ips_url: &str, + Numbers_url: &str, + Audience: &str, + Grant_type: &str, + } + + rcv := diffSentryPeerJsonCfg(d, v1, v2) + + if !reflect.DeepEqual(exp, rcv) { + t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv)) + } +}