mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Improving coverage at /config
This commit is contained in:
committed by
Dan Christian Bogos
parent
50e2a6a469
commit
6810efb7ef
@@ -21,7 +21,7 @@ import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestConfigDBWhatever(t *testing.T) {
|
||||
func TestConfigDBOptsInvalid(t *testing.T) {
|
||||
cfgJSONStr := `{
|
||||
"config_db": {
|
||||
"opts":{
|
||||
|
||||
@@ -18,7 +18,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
package config
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
@@ -1820,7 +1819,7 @@ func TestConfigSanityErs(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
func TestCGRConfigcheckConfigSanitySessionSErr(t *testing.T) {
|
||||
cfg := &CGRConfig{
|
||||
cdrsCfg: &CdrsCfg{
|
||||
Enabled: false,
|
||||
@@ -1844,6 +1843,9 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestCGRConfigcheckConfigSanityAdminSErrExportersCSV(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.cacheCfg.Partitions = map[string]*CacheParamCfg{
|
||||
@@ -1880,14 +1882,21 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
},
|
||||
},
|
||||
}
|
||||
CfgCopy := cfg
|
||||
expErr = "<AdminS> connection with id: <test> not defined"
|
||||
// CfgCopy := cfg.Clone()
|
||||
|
||||
expErr := "<AdminS> connection with id: <test> not defined"
|
||||
// if !reflect.DeepEqual(CfgCopy, cfg) {
|
||||
// fmt.Println("difffff")
|
||||
// }
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err)
|
||||
}
|
||||
if !reflect.DeepEqual(CfgCopy, cfg) {
|
||||
t.Errorf("Expected cfg not to change, was <%+v> \nnow is <%+v>", CfgCopy, cfg)
|
||||
}
|
||||
// if !reflect.DeepEqual(CfgCopy, cfg) {
|
||||
// t.Errorf("Expected cfg not to change, was <%+v> \nnow is <%+v>",
|
||||
// utils.ToJSON(CfgCopy.AsMapInterface(";")), utils.ToJSON(cfg.AsMapInterface(";")))
|
||||
// }
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityEEsCfgExportersFWV(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.cacheCfg.Partitions = map[string]*CacheParamCfg{
|
||||
@@ -1925,14 +1934,16 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
CfgCopy = cfg
|
||||
expErr = "<AdminS> connection with id: <test> not defined"
|
||||
// CfgCopy = &cfg
|
||||
expErr := "<AdminS> connection with id: <test> not defined"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err)
|
||||
}
|
||||
if !reflect.DeepEqual(CfgCopy, cfg) {
|
||||
t.Errorf("Expected cfg not to change, was <%+v> \nnow is <%+v>", CfgCopy, cfg)
|
||||
}
|
||||
// if !reflect.DeepEqual(*CfgCopy, cfg) {
|
||||
// t.Errorf("Expected cfg not to change, was <%+v> \nnow is <%+v>", *CfgCopy, cfg)
|
||||
// }
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityCacheSErr(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.cacheCfg.Partitions = map[string]*CacheParamCfg{
|
||||
@@ -1945,10 +1956,12 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
Type: utils.Internal,
|
||||
}
|
||||
|
||||
expErr = "<CacheS> *resource_profiles needs to be 0 when DataBD is *internal, received : 1"
|
||||
expErr := "<CacheS> *resource_profiles needs to be 0 when DataBD is *internal, received : 1"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityCacheSIdErr(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.cacheCfg.RemoteConns = []string{"remote conn"}
|
||||
@@ -1963,10 +1976,12 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
},
|
||||
}
|
||||
cfg.admS.AttributeSConns = []string{utils.MetaInternal}
|
||||
expErr = "<CacheS> connection with id: <remote conn> not defined"
|
||||
expErr := "<CacheS> connection with id: <remote conn> not defined"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityCacheSTransportErr(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.cacheCfg.RemoteConns = []string{"con1"}
|
||||
@@ -1982,10 +1997,12 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
expErr = "<CacheS> unsupported transport <*none> for connection with ID: <con1>"
|
||||
expErr := "<CacheS> unsupported transport <*none> for connection with ID: <con1>"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityCacheSPartitionErr(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.cacheCfg = &CacheCfg{
|
||||
@@ -1996,10 +2013,12 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
expErr = "<CacheS> partition <*rpc_connections> does not support replication"
|
||||
expErr := "<CacheS> partition <*rpc_connections> does not support replication"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityEEsErr(t *testing.T) {
|
||||
|
||||
cfg = NewDefaultCGRConfig()
|
||||
cfg.eesCfg = &EEsCfg{Enabled: false}
|
||||
@@ -2011,10 +2030,13 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
EEsConns: []string{utils.MetaInternal},
|
||||
}
|
||||
|
||||
expErr = "<EEs> not enabled but requested by <AnalyzerS> component"
|
||||
expErr := "<EEs> not enabled but requested by <AnalyzerS> component"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
}
|
||||
func TestCGRConfigcheckConfigSanityAnalyzerSErr(t *testing.T) {
|
||||
|
||||
cfg.eesCfg = &EEsCfg{Enabled: true}
|
||||
cfg.analyzerSCfg = &AnalyzerSCfg{
|
||||
Enabled: true,
|
||||
@@ -2023,7 +2045,7 @@ func TestCGRConfigcheckConfigSanity(t *testing.T) {
|
||||
EEsConns: []string{"test"},
|
||||
}
|
||||
|
||||
expErr = "<AnalyzerS> connection with id: <test> not defined"
|
||||
expErr := "<AnalyzerS> connection with id: <test> not defined"
|
||||
if err := cfg.checkConfigSanity(); err.Error() != expErr {
|
||||
t.Errorf("Expected error <%v>, Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
|
||||
@@ -184,3 +184,24 @@ func TestCoreSCloneSection(t *testing.T) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
func TestDiffCoreSJsonCfgEEsConnsNotEqual(t *testing.T) {
|
||||
var d *CoreSJsonCfg
|
||||
|
||||
v1 := &CoreSCfg{
|
||||
EEsConns: []string{"sltest1", "sltest2"},
|
||||
}
|
||||
|
||||
v2 := &CoreSCfg{
|
||||
EEsConns: []string{"sltest3", "sltest4"},
|
||||
}
|
||||
|
||||
expected := &CoreSJsonCfg{
|
||||
Ees_conns: utils.SliceStringPointer([]string{"sltest3", "sltest4"}),
|
||||
}
|
||||
|
||||
rcv := diffCoreSJsonCfg(d, v1, v2)
|
||||
if !reflect.DeepEqual(rcv, expected) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(expected), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,6 +84,25 @@ func TestDataDbCfgloadFromJsonCfg(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestDataDbCfgloadFromJsonCfgItemsErr(t *testing.T) {
|
||||
jsonCfg := &DbJsonCfg{
|
||||
Items: map[string]*ItemOptsJson{
|
||||
|
||||
"Bad Item": {
|
||||
Ttl: utils.StringPointer("bad input"),
|
||||
},
|
||||
},
|
||||
}
|
||||
expErr := `time: invalid duration "bad input"`
|
||||
jsnCfg := NewDefaultCGRConfig()
|
||||
jsnCfg.dataDbCfg.Items = map[string]*ItemOpts{
|
||||
"Bad Item": {},
|
||||
}
|
||||
if err = jsnCfg.dataDbCfg.loadFromJSONCfg(jsonCfg); err.Error() != expErr {
|
||||
t.Errorf("Expected Error <%v>, ]\n Received error <%v>", expErr, err.Error())
|
||||
}
|
||||
}
|
||||
|
||||
func TestDataDbLoadFromJsonCfgOpt(t *testing.T) {
|
||||
dbOpts := &DataDBOpts{}
|
||||
if err := dbOpts.loadFromJSONCfg(nil); err != nil {
|
||||
@@ -115,6 +134,37 @@ func TestDataDbLoadFromJsonCfgOpt(t *testing.T) {
|
||||
|
||||
}
|
||||
|
||||
func TestDataDbLoadFromJsonCfgRedisConnTimeOut(t *testing.T) {
|
||||
dbOpts := &DataDBOpts{}
|
||||
jsnCfg := &DBOptsJson{
|
||||
RedisConnectTimeout: utils.StringPointer("2c"),
|
||||
}
|
||||
errExpect := `time: unknown unit "c" in duration "2c"`
|
||||
if err := dbOpts.loadFromJSONCfg(jsnCfg); err == nil || err.Error() != errExpect {
|
||||
t.Errorf("Expecting %v \n but received \n %v", errExpect, err.Error())
|
||||
}
|
||||
}
|
||||
func TestDataDbLoadFromJsonCfgRedisReadTimeOut(t *testing.T) {
|
||||
dbOpts := &DataDBOpts{}
|
||||
jsnCfg := &DBOptsJson{
|
||||
RedisReadTimeout: utils.StringPointer("2c"),
|
||||
}
|
||||
errExpect := `time: unknown unit "c" in duration "2c"`
|
||||
if err := dbOpts.loadFromJSONCfg(jsnCfg); err == nil || err.Error() != errExpect {
|
||||
t.Errorf("Expecting %v \n but received \n %v", errExpect, err.Error())
|
||||
}
|
||||
}
|
||||
|
||||
func TestDataDbLoadFromJsonCfgRedisWriteTimeout(t *testing.T) {
|
||||
dbOpts := &DataDBOpts{}
|
||||
jsnCfg := &DBOptsJson{
|
||||
RedisWriteTimeout: utils.StringPointer("2c"),
|
||||
}
|
||||
errExpect := `time: unknown unit "c" in duration "2c"`
|
||||
if err := dbOpts.loadFromJSONCfg(jsnCfg); err == nil || err.Error() != errExpect {
|
||||
t.Errorf("Expecting %v \n but received \n %v", errExpect, err.Error())
|
||||
}
|
||||
}
|
||||
func TestConnsloadFromJsonCfg(t *testing.T) {
|
||||
jsonCfg := &DbJsonCfg{
|
||||
Remote_conns: &[]string{"*internal"},
|
||||
@@ -594,6 +644,9 @@ func TestDiffItemOptJson(t *testing.T) {
|
||||
Replicate: false,
|
||||
RouteID: "RouteID",
|
||||
APIKey: "APIKey",
|
||||
Limit: 1,
|
||||
StaticTTL: true,
|
||||
TTL: 2,
|
||||
}
|
||||
|
||||
v2 := &ItemOpts{
|
||||
@@ -601,13 +654,19 @@ func TestDiffItemOptJson(t *testing.T) {
|
||||
Replicate: true,
|
||||
RouteID: "RouteID2",
|
||||
APIKey: "APIKey2",
|
||||
Limit: 2,
|
||||
StaticTTL: false,
|
||||
TTL: 3,
|
||||
}
|
||||
|
||||
expected := &ItemOptsJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Replicate: utils.BoolPointer(true),
|
||||
Route_id: utils.StringPointer("RouteID2"),
|
||||
Api_key: utils.StringPointer("APIKey2"),
|
||||
Remote: utils.BoolPointer(false),
|
||||
Replicate: utils.BoolPointer(true),
|
||||
Route_id: utils.StringPointer("RouteID2"),
|
||||
Api_key: utils.StringPointer("APIKey2"),
|
||||
Limit: utils.IntPointer(2),
|
||||
Ttl: utils.StringPointer("3ns"),
|
||||
Static_ttl: utils.BoolPointer(false),
|
||||
}
|
||||
|
||||
rcv := diffItemOptJson(d, v1, v2)
|
||||
@@ -766,6 +825,11 @@ func TestDataDbDiffOptsJson(t *testing.T) {
|
||||
RedisClientCertificate: "",
|
||||
RedisClientKey: "",
|
||||
RedisCACertificate: "",
|
||||
RedisMaxConns: 2,
|
||||
RedisConnectAttempts: 3,
|
||||
RedisConnectTimeout: 3,
|
||||
RedisReadTimeout: 2,
|
||||
RedisWriteTimeout: 2,
|
||||
}
|
||||
|
||||
v2 := &DataDBOpts{
|
||||
@@ -778,6 +842,11 @@ func TestDataDbDiffOptsJson(t *testing.T) {
|
||||
RedisClientCertificate: "1",
|
||||
RedisClientKey: "1",
|
||||
RedisCACertificate: "1",
|
||||
RedisMaxConns: 3,
|
||||
RedisConnectAttempts: 4,
|
||||
RedisConnectTimeout: 4,
|
||||
RedisReadTimeout: 3,
|
||||
RedisWriteTimeout: 3,
|
||||
}
|
||||
|
||||
exp := &DBOptsJson{
|
||||
@@ -790,6 +859,11 @@ func TestDataDbDiffOptsJson(t *testing.T) {
|
||||
RedisClientCertificate: utils.StringPointer("1"),
|
||||
RedisClientKey: utils.StringPointer("1"),
|
||||
RedisCACertificate: utils.StringPointer("1"),
|
||||
RedisWriteTimeout: utils.StringPointer("3ns"),
|
||||
RedisReadTimeout: utils.StringPointer("3ns"),
|
||||
RedisConnectTimeout: utils.StringPointer("4ns"),
|
||||
RedisConnectAttempts: utils.IntPointer(4),
|
||||
RedisMaxConns: utils.IntPointer(3),
|
||||
}
|
||||
|
||||
rcv := diffDataDBOptsJsonCfg(d, v1, v2)
|
||||
@@ -803,7 +877,12 @@ func TestDataDbDefaultDBPort(t *testing.T) {
|
||||
t.Errorf("Expected %v \n but received \n %v", "5432", port)
|
||||
}
|
||||
}
|
||||
|
||||
func TestDataDbDefaultDBPortMySQL(t *testing.T) {
|
||||
port := defaultDBPort(utils.MySQL, utils.MetaDynamic)
|
||||
if port != "3306" {
|
||||
t.Errorf("Expected %v \n but received \n %v", "3306", port)
|
||||
}
|
||||
}
|
||||
func TestDataDbDiff(t *testing.T) {
|
||||
dataDbCfg := &DataDbCfg{
|
||||
Type: "mysql",
|
||||
@@ -846,3 +925,22 @@ func TestDataDbDiff(t *testing.T) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
func TestItemOptsAsMapInterface(t *testing.T) {
|
||||
itm := &ItemOpts{
|
||||
TTL: 1,
|
||||
}
|
||||
|
||||
exp := map[string]interface{}{
|
||||
"limit": 0,
|
||||
"remote": false,
|
||||
"replicate": false,
|
||||
"static_ttl": false,
|
||||
"ttl": "1ns",
|
||||
}
|
||||
|
||||
if rcv := itm.AsMapInterface(); !reflect.DeepEqual(rcv, exp) {
|
||||
t.Errorf("Expected <%+v>, \nReceived <%+v>", utils.ToJSON(exp), utils.ToJSON(rcv))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -269,3 +269,60 @@ func TestDispatcherSCfgCloneTest(t *testing.T) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
func TestDispatchersOptsLoadFromJSONCfgNil(t *testing.T) {
|
||||
var jsnCfg *DispatchersOptsJson
|
||||
dspOpts := &DispatchersOpts{
|
||||
Dispatchers: []*utils.DynamicBoolOpt{
|
||||
{
|
||||
Tenant: "Filler val",
|
||||
},
|
||||
},
|
||||
}
|
||||
dspOptsClone := dspOpts.Clone()
|
||||
dspOpts.loadFromJSONCfg(jsnCfg)
|
||||
if !reflect.DeepEqual(dspOptsClone, dspOpts) {
|
||||
t.Errorf("Expected DispatcherSCfg to not change. Was <%+v>\n,now is <%+v>", dspOptsClone, dspOpts)
|
||||
}
|
||||
}
|
||||
|
||||
func TestDiffDispatchersOptsJsonCfg(t *testing.T) {
|
||||
var d *DispatchersOptsJson
|
||||
|
||||
v1 := &DispatchersOpts{
|
||||
Dispatchers: []*utils.DynamicBoolOpt{
|
||||
{
|
||||
Tenant: "1",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
v2 := &DispatchersOpts{
|
||||
Dispatchers: []*utils.DynamicBoolOpt{
|
||||
{
|
||||
Tenant: "2",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
expected := &DispatchersOptsJson{
|
||||
Dispatchers: []*utils.DynamicBoolOpt{
|
||||
{
|
||||
Tenant: "2",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
rcv := diffDispatchersOptsJsonCfg(d, v1, v2)
|
||||
if !reflect.DeepEqual(rcv, expected) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(expected), utils.ToJSON(rcv))
|
||||
}
|
||||
|
||||
v2_2 := v1
|
||||
expected2 := &DispatchersOptsJson{}
|
||||
|
||||
rcv = diffDispatchersOptsJsonCfg(d, v1, v2_2)
|
||||
if !reflect.DeepEqual(rcv, expected2) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(expected2), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -749,6 +749,8 @@ func TestDiffEventExporterJsonCfg(t *testing.T) {
|
||||
Type: "*string",
|
||||
},
|
||||
},
|
||||
Blocker: true,
|
||||
EFsConns: []string{"v1 efs test"},
|
||||
}
|
||||
|
||||
v2 := &EventExporterCfg{
|
||||
@@ -792,6 +794,8 @@ func TestDiffEventExporterJsonCfg(t *testing.T) {
|
||||
Type: "*prefix",
|
||||
},
|
||||
},
|
||||
Blocker: false,
|
||||
EFsConns: []string{"efs test"},
|
||||
}
|
||||
|
||||
expected := &EventExporterJsonCfg{
|
||||
@@ -816,6 +820,8 @@ func TestDiffEventExporterJsonCfg(t *testing.T) {
|
||||
Layout: utils.StringPointer(""),
|
||||
},
|
||||
},
|
||||
Blocker: utils.BoolPointer(false),
|
||||
Efs_conns: utils.SliceStringPointer([]string{"efs test"}),
|
||||
}
|
||||
|
||||
rcv := diffEventExporterJsonCfg(d, v1, v2, ";")
|
||||
@@ -1176,7 +1182,9 @@ func TestEeSCloneSection(t *testing.T) {
|
||||
func TestDiffEventExporterOptsJsonCfg(t *testing.T) {
|
||||
var d *EventExporterOptsJson
|
||||
|
||||
v1 := &EventExporterOpts{}
|
||||
v1 := &EventExporterOpts{
|
||||
ConnIDs: utils.SliceStringPointer([]string{"V1test"}),
|
||||
}
|
||||
|
||||
v2 := &EventExporterOpts{
|
||||
CSVFieldSeparator: utils.StringPointer(","),
|
||||
@@ -1226,6 +1234,9 @@ func TestDiffEventExporterOptsJsonCfg(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.DurationPointer(2 * time.Second),
|
||||
RPCReplyTimeout: utils.DurationPointer(2 * time.Second),
|
||||
MYSQLDSNParams: map[string]string{},
|
||||
KafkaTLS: utils.BoolPointer(true),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"test"}),
|
||||
}
|
||||
|
||||
exp := &EventExporterOptsJson{
|
||||
@@ -1276,6 +1287,9 @@ func TestDiffEventExporterOptsJsonCfg(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.StringPointer("2s"),
|
||||
RPCReplyTimeout: utils.StringPointer("2s"),
|
||||
MYSQLDSNParams: map[string]string{},
|
||||
KafkaTLS: utils.BoolPointer(true),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"test"}),
|
||||
}
|
||||
|
||||
rcv := diffEventExporterOptsJsonCfg(d, v1, v2)
|
||||
@@ -1284,6 +1298,25 @@ func TestDiffEventExporterOptsJsonCfg(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestDiffEventExporterOptsJsonCfgConnIDsAreEqual(t *testing.T) {
|
||||
var d *EventExporterOptsJson
|
||||
|
||||
v1 := &EventExporterOpts{
|
||||
ConnIDs: utils.SliceStringPointer([]string{"test"}),
|
||||
}
|
||||
|
||||
v2 := &EventExporterOpts{
|
||||
ConnIDs: utils.SliceStringPointer([]string{"test"}),
|
||||
}
|
||||
|
||||
exp := &EventExporterOptsJson{}
|
||||
|
||||
rcv := diffEventExporterOptsJsonCfg(d, v1, v2)
|
||||
if !reflect.DeepEqual(rcv, exp) {
|
||||
t.Errorf("Expected %v \n but received \n %v", utils.ToJSON(exp), utils.ToJSON(rcv))
|
||||
}
|
||||
}
|
||||
|
||||
func TestEventExporterOptsClone(t *testing.T) {
|
||||
eeOpts := &EventExporterOpts{
|
||||
CSVFieldSeparator: utils.StringPointer(","),
|
||||
@@ -1333,6 +1366,10 @@ func TestEventExporterOptsClone(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.DurationPointer(2 * time.Second),
|
||||
RPCReplyTimeout: utils.DurationPointer(2 * time.Second),
|
||||
MYSQLDSNParams: make(map[string]string),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"testID"}),
|
||||
RPCAPIOpts: make(map[string]interface{}),
|
||||
}
|
||||
|
||||
exp := &EventExporterOpts{
|
||||
@@ -1383,6 +1420,10 @@ func TestEventExporterOptsClone(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.DurationPointer(2 * time.Second),
|
||||
RPCReplyTimeout: utils.DurationPointer(2 * time.Second),
|
||||
MYSQLDSNParams: make(map[string]string),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"testID"}),
|
||||
RPCAPIOpts: make(map[string]interface{}),
|
||||
}
|
||||
|
||||
if rcv := eeOpts.Clone(); !reflect.DeepEqual(exp, rcv) {
|
||||
@@ -1441,6 +1482,9 @@ func TestLoadFromJSONCfg(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.StringPointer("2s"),
|
||||
RPCReplyTimeout: utils.StringPointer("2s"),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"testID"}),
|
||||
RPCAPIOpts: make(map[string]interface{}),
|
||||
}
|
||||
|
||||
exp := &EventExporterOpts{
|
||||
@@ -1491,6 +1535,9 @@ func TestLoadFromJSONCfg(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.DurationPointer(2 * time.Second),
|
||||
RPCReplyTimeout: utils.DurationPointer(2 * time.Second),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"testID"}),
|
||||
RPCAPIOpts: make(map[string]interface{}),
|
||||
}
|
||||
|
||||
if err := eeOpts.loadFromJSONCfg(eeSJson); err != nil {
|
||||
@@ -1648,6 +1695,9 @@ func TestEEsAsMapInterface(t *testing.T) {
|
||||
TLS: utils.BoolPointer(false),
|
||||
RPCConnTimeout: utils.DurationPointer(2 * time.Second),
|
||||
RPCReplyTimeout: utils.DurationPointer(2 * time.Second),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
ConnIDs: utils.SliceStringPointer([]string{"testID"}),
|
||||
RPCAPIOpts: make(map[string]interface{}),
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1700,6 +1750,9 @@ func TestEEsAsMapInterface(t *testing.T) {
|
||||
"sqlTableName": "cdrs",
|
||||
"sqsQueueID": "sqs_queue_id",
|
||||
"pgSSLMode": "sslm",
|
||||
"kafkaTLS": false,
|
||||
"connIDs": []string{"testID"},
|
||||
"rpcAPIOpts": make(map[string]interface{}),
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
@@ -1797,6 +1797,12 @@ func TestERsLoadFromJSONCfg(t *testing.T) {
|
||||
NATSClientCertificateProcessed: utils.StringPointer("cc_processed"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("ck_processed"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.StringPointer("2s"),
|
||||
KafkaTLS: utils.BoolPointer(true),
|
||||
KafkaCAPath: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerify: utils.BoolPointer(true),
|
||||
KafkaTLSProcessed: utils.BoolPointer(true),
|
||||
KafkaCAPathProcessed: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerifyProcessed: utils.BoolPointer(true),
|
||||
}
|
||||
|
||||
exp := &EventReaderOpts{
|
||||
@@ -1859,6 +1865,12 @@ func TestERsLoadFromJSONCfg(t *testing.T) {
|
||||
NATSClientCertificateProcessed: utils.StringPointer("cc_processed"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("ck_processed"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.DurationPointer(2 * time.Second),
|
||||
KafkaTLS: utils.BoolPointer(true),
|
||||
KafkaCAPath: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerify: utils.BoolPointer(true),
|
||||
KafkaTLSProcessed: utils.BoolPointer(true),
|
||||
KafkaCAPathProcessed: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerifyProcessed: utils.BoolPointer(true),
|
||||
}
|
||||
|
||||
if err := erOpts.loadFromJSONCfg(erJson); err != nil {
|
||||
@@ -2026,6 +2038,12 @@ func TestERsClone(t *testing.T) {
|
||||
NATSClientCertificateProcessed: utils.StringPointer("cc_processed"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("ck_processed"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.DurationPointer(2 * time.Second),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
KafkaCAPath: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerify: utils.BoolPointer(false),
|
||||
KafkaTLSProcessed: utils.BoolPointer(false),
|
||||
KafkaCAPathProcessed: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerifyProcessed: utils.BoolPointer(false),
|
||||
}
|
||||
|
||||
exp := &EventReaderOpts{
|
||||
@@ -2088,6 +2106,12 @@ func TestERsClone(t *testing.T) {
|
||||
NATSClientCertificateProcessed: utils.StringPointer("cc_processed"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("ck_processed"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.DurationPointer(2 * time.Second),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
KafkaCAPath: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerify: utils.BoolPointer(false),
|
||||
KafkaTLSProcessed: utils.BoolPointer(false),
|
||||
KafkaCAPathProcessed: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerifyProcessed: utils.BoolPointer(false),
|
||||
}
|
||||
|
||||
rcv := erOpts.Clone()
|
||||
@@ -2158,6 +2182,12 @@ func TestERsAsMapInterface(t *testing.T) {
|
||||
NATSClientCertificateProcessed: utils.StringPointer("cc_processed"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("ck_processed"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.DurationPointer(2 * time.Second),
|
||||
KafkaTLS: utils.BoolPointer(false),
|
||||
KafkaCAPath: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerify: utils.BoolPointer(false),
|
||||
KafkaTLSProcessed: utils.BoolPointer(false),
|
||||
KafkaCAPathProcessed: utils.StringPointer("/tmp/path"),
|
||||
KafkaSkipTLSVerifyProcessed: utils.BoolPointer(false),
|
||||
},
|
||||
}
|
||||
|
||||
@@ -2222,6 +2252,12 @@ func TestERsAsMapInterface(t *testing.T) {
|
||||
"pgSSLMode": "ssl_mode",
|
||||
"pgSSLModeProcessed": "ssl_mode_processed",
|
||||
"xmlRootPath": "xml_root_path",
|
||||
"kafkaTLS": false,
|
||||
"kafkaCAPath": "/tmp/path",
|
||||
"kafkaSkipTLSVerify": false,
|
||||
"kafkaTLSProcessed": false,
|
||||
"kafkaCAPathProcessed": "/tmp/path",
|
||||
"kafkaSkipTLSVerifyProcessed": false,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user