mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
improving tests at config folder
This commit is contained in:
committed by
Dan Christian Bogos
parent
0d72169516
commit
c2aed810e3
@@ -171,6 +171,7 @@ func TestEESClone(t *testing.T) {
|
||||
},
|
||||
},
|
||||
Opts: &EventExporterOpts{
|
||||
|
||||
CSVFieldSeparator: utils.StringPointer(utils.InfieldSep),
|
||||
MYSQLDSNParams: map[string]string{
|
||||
"allowOldPasswords": "true",
|
||||
@@ -251,6 +252,80 @@ func TestEventExporterloadFromJsonCfg(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestEventExporterOptsloadFromJsonCfg(t *testing.T) {
|
||||
|
||||
eventExporterOptsJSON := &EventExporterOptsJson{
|
||||
|
||||
ElsIndex: utils.StringPointer("test"),
|
||||
ElsIfPrimaryTerm: utils.IntPointer(0),
|
||||
ElsIfSeqNo: utils.IntPointer(0),
|
||||
ElsOpType: utils.StringPointer("test2"),
|
||||
ElsPipeline: utils.StringPointer("test3"),
|
||||
ElsRouting: utils.StringPointer("test4"),
|
||||
ElsTimeout: utils.StringPointer("1m"),
|
||||
ElsVersion: utils.IntPointer(2),
|
||||
ElsVersionType: utils.StringPointer("test5"),
|
||||
ElsWaitForActiveShards: utils.StringPointer("test6"),
|
||||
SQLMaxIdleConns: utils.IntPointer(4),
|
||||
SQLMaxOpenConns: utils.IntPointer(6),
|
||||
SQLConnMaxLifetime: utils.StringPointer("1m"),
|
||||
SQLTableName: utils.StringPointer("table"),
|
||||
SQLDBName: utils.StringPointer("db"),
|
||||
PgSSLMode: utils.StringPointer("pg"),
|
||||
AWSToken: utils.StringPointer("token"),
|
||||
S3FolderPath: utils.StringPointer("s3"),
|
||||
NATSJetStream: utils.BoolPointer(true),
|
||||
NATSSubject: utils.StringPointer("nat"),
|
||||
NATSJWTFile: utils.StringPointer("jwt"),
|
||||
NATSSeedFile: utils.StringPointer("seed"),
|
||||
NATSCertificateAuthority: utils.StringPointer("NATS"),
|
||||
NATSClientCertificate: utils.StringPointer("NATSClient"),
|
||||
NATSClientKey: utils.StringPointer("key"),
|
||||
NATSJetStreamMaxWait: utils.StringPointer("1m"),
|
||||
}
|
||||
|
||||
expected := &EventExporterOpts{
|
||||
|
||||
ElsIndex: utils.StringPointer("test2"),
|
||||
ElsIfPrimaryTerm: utils.IntPointer(0),
|
||||
ElsIfSeqNo: utils.IntPointer(0),
|
||||
ElsOpType: utils.StringPointer("test2"),
|
||||
ElsPipeline: utils.StringPointer("test3"),
|
||||
ElsRouting: utils.StringPointer("test4"),
|
||||
ElsTimeout: utils.DurationPointer(1 * time.Minute),
|
||||
ElsVersion: utils.IntPointer(2),
|
||||
ElsVersionType: utils.StringPointer("test5"),
|
||||
ElsWaitForActiveShards: utils.StringPointer("test6"),
|
||||
SQLMaxIdleConns: utils.IntPointer(4),
|
||||
SQLMaxOpenConns: utils.IntPointer(6),
|
||||
SQLConnMaxLifetime: utils.DurationPointer(1 * time.Minute),
|
||||
SQLTableName: utils.StringPointer("table"),
|
||||
SQLDBName: utils.StringPointer("db"),
|
||||
PgSSLMode: utils.StringPointer("pg"),
|
||||
AWSToken: utils.StringPointer("token"),
|
||||
S3FolderPath: utils.StringPointer("s3"),
|
||||
NATSJetStream: utils.BoolPointer(true),
|
||||
NATSSubject: utils.StringPointer("nat"),
|
||||
NATSJWTFile: utils.StringPointer("jwt"),
|
||||
NATSSeedFile: utils.StringPointer("seed"),
|
||||
NATSCertificateAuthority: utils.StringPointer("NATS"),
|
||||
NATSClientCertificate: utils.StringPointer("NATSClient"),
|
||||
NATSClientKey: utils.StringPointer("key"),
|
||||
NATSJetStreamMaxWait: utils.DurationPointer(1 * time.Minute),
|
||||
}
|
||||
eventExporter := &EventExporterCfg{
|
||||
|
||||
Opts: &EventExporterOpts{},
|
||||
}
|
||||
if err := eventExporter.Opts.loadFromJSONCfg(eventExporterOptsJSON); err != nil {
|
||||
t.Error(expected)
|
||||
|
||||
} else if reflect.DeepEqual(expected, eventExporter.Opts) {
|
||||
t.Errorf("expected %v received %v", expected, eventExporter.Opts)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestEESCacheloadFromJsonCfg(t *testing.T) {
|
||||
eesCfg := &EEsJsonCfg{
|
||||
Cache: &map[string]*CacheParamJsonCfg{
|
||||
|
||||
@@ -1183,3 +1183,145 @@ func TestGetDefaultExporter(t *testing.T) {
|
||||
t.Fatalf("Unexpected default cfg returned: %s", utils.ToJSON(dft))
|
||||
}
|
||||
}
|
||||
|
||||
func TestEventReaderOptsCfg(t *testing.T) {
|
||||
|
||||
erCfg := new(EventReaderCfg)
|
||||
|
||||
if err := erCfg.Opts.loadFromJSONCfg(nil); err != nil {
|
||||
|
||||
t.Error(err)
|
||||
}
|
||||
|
||||
eventReaderOptsJson := &EventReaderOptsJson{
|
||||
PartialPath: utils.StringPointer("path"),
|
||||
PartialCSVFieldSeparator: utils.StringPointer("/"),
|
||||
CSVLazyQuotes: utils.BoolPointer(false),
|
||||
AMQPQueueID: utils.StringPointer("id"),
|
||||
AMQPQueueIDProcessed: utils.StringPointer("id"),
|
||||
AMQPConsumerTag: utils.StringPointer("tag"),
|
||||
AMQPExchange: utils.StringPointer("exchange"),
|
||||
AMQPExchangeType: utils.StringPointer("type"),
|
||||
AMQPRoutingKey: utils.StringPointer("key1"),
|
||||
AMQPExchangeProcessed: utils.StringPointer("amq"),
|
||||
AMQPExchangeTypeProcessed: utils.StringPointer("amqtype"),
|
||||
AMQPRoutingKeyProcessed: utils.StringPointer("key"),
|
||||
KafkaTopic: utils.StringPointer("kafka"),
|
||||
KafkaMaxWait: utils.StringPointer("1m"),
|
||||
KafkaTopicProcessed: utils.StringPointer("kafkaproc"),
|
||||
SQLDBName: utils.StringPointer("dbname"),
|
||||
SQLTableName: utils.StringPointer("tablename"),
|
||||
PgSSLMode: utils.StringPointer("sslmode"),
|
||||
SQLDBNameProcessed: utils.StringPointer("dbnameproc"),
|
||||
SQLTableNameProcessed: utils.StringPointer("tablenameproc"),
|
||||
PgSSLModeProcessed: utils.StringPointer("sslproc"),
|
||||
AWSRegion: utils.StringPointer("eu"),
|
||||
AWSKey: utils.StringPointer("key"),
|
||||
AWSSecret: utils.StringPointer("secret"),
|
||||
AWSToken: utils.StringPointer("token"),
|
||||
|
||||
AWSKeyProcessed: utils.StringPointer("secret"),
|
||||
AWSSecretProcessed: utils.StringPointer("secret"),
|
||||
AWSTokenProcessed: utils.StringPointer("token"),
|
||||
SQSQueueID: utils.StringPointer("SQSQueue"),
|
||||
SQSQueueIDProcessed: utils.StringPointer("SQSQueueId"),
|
||||
S3BucketID: utils.StringPointer("S3BucketID"),
|
||||
S3FolderPathProcessed: utils.StringPointer("S3Path"),
|
||||
S3BucketIDProcessed: utils.StringPointer("S3BucketProc"),
|
||||
NATSJetStream: utils.BoolPointer(false),
|
||||
NATSConsumerName: utils.StringPointer("user"),
|
||||
NATSQueueID: utils.StringPointer("id"),
|
||||
NATSJWTFile: utils.StringPointer("jwt"),
|
||||
NATSSeedFile: utils.StringPointer("seed"),
|
||||
NATSCertificateAuthority: utils.StringPointer("authority"),
|
||||
NATSClientCertificate: utils.StringPointer("certificate"),
|
||||
NATSClientKey: utils.StringPointer("key5"),
|
||||
NATSJetStreamMaxWait: utils.StringPointer("1m"),
|
||||
NATSJetStreamProcessed: utils.BoolPointer(true),
|
||||
NATSJWTFileProcessed: utils.StringPointer("file"),
|
||||
NATSSeedFileProcessed: utils.StringPointer("natseed"),
|
||||
NATSCertificateAuthorityProcessed: utils.StringPointer("natsauth"),
|
||||
NATSClientCertificateProcessed: utils.StringPointer("natcertificate"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("natsprocess"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.StringPointer("1m"),
|
||||
}
|
||||
|
||||
eventReader := &EventReaderCfg{
|
||||
Opts: &EventReaderOpts{},
|
||||
}
|
||||
if err := eventReader.Opts.loadFromJSONCfg(eventReaderOptsJson); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestEventReaderCfgClone(t *testing.T) {
|
||||
ban := &EventReaderCfg{
|
||||
ID: "2",
|
||||
Type: "type",
|
||||
RunDelay: 1 * time.Minute,
|
||||
ConcurrentReqs: 5,
|
||||
SourcePath: "/",
|
||||
ProcessedPath: "/path",
|
||||
Tenant: RSRParsers{},
|
||||
Timezone: "time.Utc",
|
||||
Flags: utils.FlagsWithParams{},
|
||||
Opts: &EventReaderOpts{
|
||||
PartialPath: utils.StringPointer("path"),
|
||||
PartialCSVFieldSeparator: utils.StringPointer("/"),
|
||||
CSVLazyQuotes: utils.BoolPointer(false),
|
||||
AMQPQueueID: utils.StringPointer("id"),
|
||||
AMQPQueueIDProcessed: utils.StringPointer("id"),
|
||||
AMQPConsumerTag: utils.StringPointer("tag"),
|
||||
AMQPExchange: utils.StringPointer("exchange"),
|
||||
AMQPExchangeType: utils.StringPointer("type"),
|
||||
AMQPRoutingKey: utils.StringPointer("key1"),
|
||||
AMQPExchangeProcessed: utils.StringPointer("amq"),
|
||||
AMQPExchangeTypeProcessed: utils.StringPointer("amqtype"),
|
||||
AMQPRoutingKeyProcessed: utils.StringPointer("key"),
|
||||
KafkaTopic: utils.StringPointer("kafka"),
|
||||
KafkaMaxWait: utils.DurationPointer(1 * time.Minute),
|
||||
KafkaTopicProcessed: utils.StringPointer("kafkaproc"),
|
||||
SQLDBName: utils.StringPointer("dbname"),
|
||||
SQLTableName: utils.StringPointer("tablename"),
|
||||
PgSSLMode: utils.StringPointer("sslmode"),
|
||||
SQLDBNameProcessed: utils.StringPointer("dbnameproc"),
|
||||
SQLTableNameProcessed: utils.StringPointer("tablenameproc"),
|
||||
PgSSLModeProcessed: utils.StringPointer("sslproc"),
|
||||
AWSRegion: utils.StringPointer("eu"),
|
||||
AWSKey: utils.StringPointer("key"),
|
||||
AWSSecret: utils.StringPointer("secret"),
|
||||
AWSToken: utils.StringPointer("token"),
|
||||
|
||||
AWSKeyProcessed: utils.StringPointer("secret"),
|
||||
AWSSecretProcessed: utils.StringPointer("secret"),
|
||||
AWSTokenProcessed: utils.StringPointer("token"),
|
||||
SQSQueueID: utils.StringPointer("SQSQueue"),
|
||||
SQSQueueIDProcessed: utils.StringPointer("SQSQueueId"),
|
||||
S3BucketID: utils.StringPointer("S3BucketID"),
|
||||
S3FolderPathProcessed: utils.StringPointer("S3Path"),
|
||||
S3BucketIDProcessed: utils.StringPointer("S3BucketProc"),
|
||||
NATSJetStream: utils.BoolPointer(false),
|
||||
NATSConsumerName: utils.StringPointer("user"),
|
||||
NATSQueueID: utils.StringPointer("id"),
|
||||
NATSJWTFile: utils.StringPointer("jwt"),
|
||||
NATSSeedFile: utils.StringPointer("seed"),
|
||||
NATSCertificateAuthority: utils.StringPointer("authority"),
|
||||
NATSClientCertificate: utils.StringPointer("certificate"),
|
||||
NATSClientKey: utils.StringPointer("key5"),
|
||||
NATSJetStreamMaxWait: utils.DurationPointer(1 * time.Minute),
|
||||
NATSJetStreamProcessed: utils.BoolPointer(true),
|
||||
NATSJWTFileProcessed: utils.StringPointer("file"),
|
||||
NATSSeedFileProcessed: utils.StringPointer("natseed"),
|
||||
NATSCertificateAuthorityProcessed: utils.StringPointer("natsauth"),
|
||||
NATSClientCertificateProcessed: utils.StringPointer("natcertificate"),
|
||||
NATSClientKeyProcessed: utils.StringPointer("natsprocess"),
|
||||
NATSJetStreamMaxWaitProcessed: utils.DurationPointer(1 * time.Minute),
|
||||
},
|
||||
}
|
||||
rcv := ban.Clone()
|
||||
if !reflect.DeepEqual(rcv, ban) {
|
||||
t.Errorf("expected %v received %v", utils.ToJSON(ban), utils.ToJSON(rcv))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -270,10 +270,21 @@ func TestHTTPLoadTransportFromJSONCfg(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestHTTPLoadFromJSONCfg(t *testing.T) {
|
||||
var jsnHTTPCfg *HTTPJsonCfg
|
||||
var jsonHTTPCfg *HTTPJsonCfg
|
||||
httpcfg := &HTTPCfg{}
|
||||
if err := httpcfg.loadFromJSONCfg(jsnHTTPCfg); err != nil {
|
||||
if err := httpcfg.loadFromJSONCfg(jsonHTTPCfg); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
|
||||
jsnHTTPCfg := &HTTPJsonCfg{
|
||||
Client_opts: &HTTPClientOptsJson{
|
||||
DialTimeout: utils.StringPointer("test")},
|
||||
}
|
||||
httpcg := &HTTPCfg{
|
||||
dialer: &net.Dialer{},
|
||||
ClientOpts: &http.Transport{},
|
||||
}
|
||||
if err := httpcg.loadFromJSONCfg(jsnHTTPCfg); err == nil {
|
||||
t.Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,6 +52,19 @@ func TestKamAgentCfgloadFromJsonCfg(t *testing.T) {
|
||||
} else if !reflect.DeepEqual(expected, jsnCfg.kamAgentCfg) {
|
||||
t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(expected), utils.ToJSON(jsnCfg.kamAgentCfg))
|
||||
}
|
||||
cfgJson := &KamAgentJsonCfg{
|
||||
|
||||
Evapi_conns: &[]*KamConnJsonCfg{
|
||||
{
|
||||
Max_reconnect_interval: utils.StringPointer("test"),
|
||||
},
|
||||
}}
|
||||
|
||||
if err := jsnCfg.kamAgentCfg.loadFromJSONCfg(cfgJson); err != nil {
|
||||
|
||||
t.Error(err)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestKamConnCfgloadFromJsonCfg(t *testing.T) {
|
||||
|
||||
@@ -87,6 +87,11 @@ func TestRouteSCfgAsMapInterface(t *testing.T) {
|
||||
},
|
||||
},
|
||||
}`
|
||||
|
||||
/* "*limit":3,
|
||||
"*offset":3,
|
||||
"*profileCount":3,*/
|
||||
|
||||
eMap := map[string]interface{}{
|
||||
utils.EnabledCfg: false,
|
||||
utils.IndexedSelectsCfg: true,
|
||||
@@ -102,6 +107,9 @@ func TestRouteSCfgAsMapInterface(t *testing.T) {
|
||||
utils.OptsContext: utils.MetaRoutes,
|
||||
utils.MetaIgnoreErrorsCfg: false,
|
||||
utils.MetaMaxCostCfg: utils.EmptyString,
|
||||
/* utils.MetaLimitCfg: utils.IntPointer(3),
|
||||
utils.MetaOffsetCfg: utils.IntPointer(3),
|
||||
utils.MetaProfileCountCfg: utils.IntPointer(3),*/
|
||||
},
|
||||
}
|
||||
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(cfgJSONStr); err != nil {
|
||||
|
||||
@@ -33,16 +33,17 @@ func TestRPCConnsloadFromJsonCfgCase1(t *testing.T) {
|
||||
PoolSize: utils.IntPointer(1),
|
||||
Conns: &[]*RemoteHostJson{
|
||||
{
|
||||
Address: utils.StringPointer("127.0.0.1:2012"),
|
||||
Transport: utils.StringPointer("*json"),
|
||||
Tls: utils.BoolPointer(false),
|
||||
Key_path: utils.StringPointer("key_path"),
|
||||
Cert_path: utils.StringPointer("cert_path"),
|
||||
Ca_path: utils.StringPointer("ca_path"),
|
||||
Conn_attempts: utils.IntPointer(5),
|
||||
Reconnects: utils.IntPointer(2),
|
||||
Connect_timeout: utils.StringPointer("1m"),
|
||||
Reply_timeout: utils.StringPointer("1m"),
|
||||
Address: utils.StringPointer("127.0.0.1:2012"),
|
||||
Transport: utils.StringPointer("*json"),
|
||||
Tls: utils.BoolPointer(false),
|
||||
Key_path: utils.StringPointer("key_path"),
|
||||
Cert_path: utils.StringPointer("cert_path"),
|
||||
Ca_path: utils.StringPointer("ca_path"),
|
||||
Conn_attempts: utils.IntPointer(5),
|
||||
Reconnects: utils.IntPointer(2),
|
||||
Connect_timeout: utils.StringPointer("1m"),
|
||||
Reply_timeout: utils.StringPointer("1m"),
|
||||
Max_reconnect_interval: utils.StringPointer("1m"),
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -83,27 +84,44 @@ func TestRPCConnsloadFromJsonCfgCase1(t *testing.T) {
|
||||
PoolSize: 1,
|
||||
Conns: []*RemoteHost{
|
||||
{
|
||||
Address: "127.0.0.1:2012",
|
||||
Transport: "*json",
|
||||
ConnectAttempts: 5,
|
||||
Reconnects: 2,
|
||||
ConnectTimeout: 1 * time.Minute,
|
||||
ReplyTimeout: 1 * time.Minute,
|
||||
TLS: false,
|
||||
ClientKey: "key_path",
|
||||
ClientCertificate: "cert_path",
|
||||
CaCertificate: "ca_path",
|
||||
Address: "127.0.0.1:2012",
|
||||
Transport: "*json",
|
||||
ConnectAttempts: 5,
|
||||
Reconnects: 2,
|
||||
ConnectTimeout: 1 * time.Minute,
|
||||
ReplyTimeout: 1 * time.Minute,
|
||||
TLS: false,
|
||||
ClientKey: "key_path",
|
||||
ClientCertificate: "cert_path",
|
||||
CaCertificate: "ca_path",
|
||||
MaxReconnectInterval: 1 * time.Minute,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
jsonCfg := NewDefaultCGRConfig()
|
||||
|
||||
jsonCfg.rpcConns[utils.MetaLocalHost].loadFromJSONCfg(cfgJSON)
|
||||
if !reflect.DeepEqual(jsonCfg.rpcConns, expected) {
|
||||
t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(expected), utils.ToJSON(jsonCfg.rpcConns))
|
||||
}
|
||||
|
||||
cfgJson := &RemoteHostJson{
|
||||
Connect_timeout: utils.StringPointer("test"),
|
||||
}
|
||||
if err := jsonCfg.rpcConns[utils.MetaLocalHost].Conns[0].loadFromJSONCfg(cfgJson); err == nil {
|
||||
t.Error(err)
|
||||
}
|
||||
cfgJson = &RemoteHostJson{
|
||||
Max_reconnect_interval: utils.StringPointer("test"),
|
||||
}
|
||||
if err := jsonCfg.rpcConns[utils.MetaLocalHost].Conns[0].loadFromJSONCfg(cfgJson); err == nil {
|
||||
t.Error(err)
|
||||
}
|
||||
cfgJson = &RemoteHostJson{
|
||||
Reply_timeout: utils.StringPointer("test"),
|
||||
}
|
||||
if err := jsonCfg.rpcConns[utils.MetaLocalHost].Conns[0].loadFromJSONCfg(cfgJson); err == nil {
|
||||
t.Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestRPCConnsloadFromJsonCfgCase2(t *testing.T) {
|
||||
@@ -181,7 +199,10 @@ func TestRPCConnsAsMapInterface(t *testing.T) {
|
||||
"connect_attempts": 5,
|
||||
"reconnects": 3,
|
||||
"connect_timeout": "1m",
|
||||
"reply_timeout": "1m"
|
||||
"reply_timeout": "1m",
|
||||
"max_reconnect_interval":"1m",
|
||||
|
||||
|
||||
}
|
||||
],
|
||||
},
|
||||
@@ -203,16 +224,18 @@ func TestRPCConnsAsMapInterface(t *testing.T) {
|
||||
utils.StrategyCfg: utils.MetaFirst,
|
||||
utils.Conns: []map[string]interface{}{
|
||||
{
|
||||
utils.AddressCfg: "127.0.0.1:2012",
|
||||
utils.TransportCfg: "*json",
|
||||
utils.IDCfg: "id_example",
|
||||
utils.TLSNoCaps: true,
|
||||
utils.KeyPathCgr: "path_to_key",
|
||||
utils.CertPathCgr: "path_to_cert",
|
||||
utils.CAPathCgr: "path_to_ca",
|
||||
utils.ReconnectsCfg: 3,
|
||||
utils.ConnectTimeoutCfg: 1 * time.Minute,
|
||||
utils.ReplyTimeoutCfg: 1 * time.Minute,
|
||||
|
||||
utils.AddressCfg: "127.0.0.1:2012",
|
||||
utils.TransportCfg: "*json",
|
||||
utils.IDCfg: "id_example",
|
||||
utils.TLSNoCaps: true,
|
||||
utils.KeyPathCgr: "path_to_key",
|
||||
utils.CertPathCgr: "path_to_cert",
|
||||
utils.CAPathCgr: "path_to_ca",
|
||||
utils.ReconnectsCfg: 3,
|
||||
utils.ConnectTimeoutCfg: 1 * time.Minute,
|
||||
utils.ReplyTimeoutCfg: 1 * time.Minute,
|
||||
utils.MaxReconnectIntervalCfg: 1 * time.Minute,
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -242,6 +265,7 @@ func TestRPCConnsAsMapInterface(t *testing.T) {
|
||||
} else if rcv := cgrCfg.rpcConns.AsMapInterface(); !reflect.DeepEqual(eMap, rcv) {
|
||||
t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(eMap), utils.ToJSON(rcv))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestRpcConnAsMapInterface1(t *testing.T) {
|
||||
|
||||
@@ -98,11 +98,12 @@ func TestSchedulerCfgAsMapInterface1(t *testing.T) {
|
||||
|
||||
func TestSchedulerCfgClone(t *testing.T) {
|
||||
ban := &SchedulerCfg{
|
||||
Enabled: true,
|
||||
CDRsConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCDRs), "*conn1"},
|
||||
ThreshSConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaThresholds), "*conn1"},
|
||||
StatSConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaStats), "*conn1"},
|
||||
Filters: []string{"randomFilter"},
|
||||
Enabled: true,
|
||||
CDRsConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaCDRs), "*conn1"},
|
||||
ThreshSConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaThresholds), "*conn1"},
|
||||
StatSConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaStats), "*conn1"},
|
||||
Filters: []string{"randomFilter"},
|
||||
DynaprepaidActionPlans: []string{"plan"},
|
||||
}
|
||||
rcv := ban.Clone()
|
||||
if !reflect.DeepEqual(ban, rcv) {
|
||||
@@ -120,4 +121,8 @@ func TestSchedulerCfgClone(t *testing.T) {
|
||||
if rcv.Filters[0] = ""; ban.Filters[0] != "randomFilter" {
|
||||
t.Errorf("Expected clone to not modify the cloned")
|
||||
}
|
||||
|
||||
if rcv.DynaprepaidActionPlans[0] = ""; ban.DynaprepaidActionPlans[0] != "plan" {
|
||||
t.Errorf("Expected clone to not modify the cloned")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user