From 0737c5589852f393f375bdf15cf9bb5ffe70537e Mon Sep 17 00:00:00 2001 From: gezimbll Date: Tue, 25 Oct 2022 10:44:55 -0400 Subject: [PATCH] coverage tests at config --- config/eescfg_test.go | 258 +++++++++++++++++++++++++++++++------- config/erscfg_test.go | 192 +++++++++++++++++----------- config/loaderscfg_test.go | 4 + config/routescfg_test.go | 13 +- config/rpcconn_test.go | 2 +- 5 files changed, 344 insertions(+), 125 deletions(-) diff --git a/config/eescfg_test.go b/config/eescfg_test.go index 6a2b15840..70aaab96f 100644 --- a/config/eescfg_test.go +++ b/config/eescfg_test.go @@ -44,15 +44,52 @@ func TestEESClone(t *testing.T) { "mysqlDSNParams": { "allowOldPasswords": "true", "allowNativePasswords": "true", - }, - - "elsIndex":"test2", - - - - - + "elsIndex":"test", + "elsIfPrimaryTerm":0, + "elsIfSeqNo":0, + "elsOpType":"test2", + "elsPipeline":"test3", + "elsRouting":"test4", + "elsTimeout":"1m", + "elsVersion":2, + "elsVersionType":"test5", + "elsWaitForActiveShards":"test6", + "sqlMaxIdleConns":4, + "sqlMaxOpenConns":6, + "sqlConnMaxLifetime":"1m", + "sqlTableName":"table", + "sqlDBName":"db", + "pgSSLMode":"pg", + "awsToken":"token", + "s3FolderPath":"s3", + "natsJetStream":true, + "natsSubject":"nat", + "natsJWTFile":"jwt", + "natsSeedFile":"seed", + "natsCertificateAuthority":"NATS", + "natsClientCertificate":"NATSClient", + "natsClientKey":"key", + "natsJetStreamMaxWait":"1m", + "kafkaTopic":"kafka", + "amqpQueueID":"id", + "amqpRoutingKey":"key", + "amqpExchangeType":"type", + "amqpExchange":"exchange", + "awsRegion":"eu", + "awsKey":"key", + "awsSecret":"secretkey", + "sqsQueueID":"sqsid", + "s3BucketID":"s3", + "rpcCodec":"rpc", + "serviceMethod":"service", + "keyPath":"path", + "certPath":"certpath", + "caPath":"capath", + "tls":true, + "connIDs":["id1","id2"], + "rpcConnTimeout":"1m", + "rpcReplyTimeout":"1m", }, "timezone": "local", "filters": ["randomFiletrs"], @@ -73,35 +110,6 @@ func TestEESClone(t *testing.T) { }, }` - /* "kafkaTopic", - "amqpQueueID", - "amqpRoutingKey", - "amqpExchangeType", - "awsRegion", - "awsKey", - "awsSecret" - "awsToken", - "sqsQueueID", - "s3BucketID", - "s3FolderPath", - "natsJetStream", - "natsSubject", - "natsJWTFile", - "natsSeedFile", - "natsCertificateAuthority", - "natsClientCertificate", - "natsClientKey", - "natsJetStreamMaxWait", - "rpcCodec", - "serviceMethod", - "keyPath", - "certPath", - "caPath", - "tls", - "connIDs", - "rpcConnTimeout", - "rpcReplyTimeout", - "rpcAPIOpts"*/ expected := &EEsCfg{ Enabled: true, AttributeSConns: []string{utils.ConcatenatedKey(utils.MetaInternal, utils.MetaAttributes), "*conn1"}, @@ -215,7 +223,51 @@ func TestEESClone(t *testing.T) { "allowOldPasswords": "true", "allowNativePasswords": "true", }, - ElsIndex: utils.StringPointer("test"), + 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.DurationPointer(1 * time.Minute), + ElsVersion: utils.IntPointer(2), + ElsVersionType: utils.StringPointer("test5"), + ElsWaitForActiveShards: utils.StringPointer("test6"), + SQLMaxIdleConns: utils.IntPointer(4), + SQLConnMaxLifetime: utils.DurationPointer(1 * time.Minute), + SQLTableName: utils.StringPointer("table"), + SQLDBName: utils.StringPointer("db"), + PgSSLMode: utils.StringPointer("pg"), + KafkaTopic: utils.StringPointer("kafka"), + SQLMaxOpenConns: utils.IntPointer(6), + 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), + AMQPRoutingKey: utils.StringPointer("key"), + AMQPQueueID: utils.StringPointer("id"), + AMQPExchangeType: utils.StringPointer("type"), + AMQPExchange: utils.StringPointer("exchange"), + AWSRegion: utils.StringPointer("eu"), + AWSKey: utils.StringPointer("key"), + AWSSecret: utils.StringPointer("secretkey"), + S3BucketID: utils.StringPointer("s3"), + SQSQueueID: utils.StringPointer("sqsid"), + RPCCodec: utils.StringPointer("rpc"), + ServiceMethod: utils.StringPointer("service"), + KeyPath: utils.StringPointer("path"), + CertPath: utils.StringPointer("certpath"), + CAPath: utils.StringPointer("capath"), + TLS: utils.BoolPointer(true), + ConnIDs: utils.SliceStringPointer([]string{"id1", "id2"}), + RPCConnTimeout: utils.DurationPointer(1 * time.Minute), + RPCReplyTimeout: utils.DurationPointer(1 * time.Minute), }, }, }, @@ -325,7 +377,7 @@ func TestEventExporterOptsloadFromJsonCfg(t *testing.T) { expected := &EventExporterOpts{ - ElsIndex: utils.StringPointer("test2"), + ElsIndex: utils.StringPointer("test"), ElsIfPrimaryTerm: utils.IntPointer(0), ElsIfSeqNo: utils.IntPointer(0), ElsOpType: utils.StringPointer("test2"), @@ -353,15 +405,37 @@ func TestEventExporterOptsloadFromJsonCfg(t *testing.T) { 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) { + } else if !reflect.DeepEqual(expected, eventExporter.Opts) { t.Errorf("expected %v received %v", expected, eventExporter.Opts) } + if err := eventExporter.Opts.loadFromJSONCfg(nil); err != nil { + t.Error(err) + } else if err := eventExporter.Opts.loadFromJSONCfg(&EventExporterOptsJson{ + ElsTimeout: utils.StringPointer("test"), + }); err == nil { + t.Error(err) + } else if err := eventExporter.Opts.loadFromJSONCfg(&EventExporterOptsJson{ + SQLConnMaxLifetime: utils.StringPointer("test"), + }); err == nil { + t.Error(err) + } else if err := eventExporter.Opts.loadFromJSONCfg(&EventExporterOptsJson{ + RPCConnTimeout: utils.StringPointer("test"), + }); err == nil { + t.Error(err) + } else if err := eventExporter.Opts.loadFromJSONCfg(&EventExporterOptsJson{ + NATSJetStreamMaxWait: utils.StringPointer("test"), + }); err == nil { + t.Error(err) + } else if err := eventExporter.Opts.loadFromJSONCfg(&EventExporterOptsJson{ + + RPCReplyTimeout: utils.StringPointer("test"), + }); err == nil { + t.Error(err) + } } @@ -729,7 +803,55 @@ func TestEEsCfgAsMapInterface(t *testing.T) { "type": "*file_csv", "export_path": "/tmp/testCSV", "opts": { - "kafkaTopic": "test", + "elsIndex":"test", + "elsIfPrimaryTerm":0, + "kafkaTopic": "test", + "elsIfSeqNo":0, + "elsOpType":"test2", + "elsPipeline":"test3", + "elsRouting":"test4", + "elsTimeout":"1m", + "elsVersion":2, + "elsVersionType":"test5", + "elsWaitForActiveShards":"test6", + "sqlMaxIdleConns":4, + "sqlMaxOpenConns":6, + "sqlConnMaxLifetime":"1m", + "sqlTableName":"table", + "sqlDBName":"db", + "pgSSLMode":"pg", + "awsToken":"token", + "s3FolderPath":"s3", + "natsJetStream":true, + "natsSubject":"nat", + "natsJWTFile":"jwt", + "natsSeedFile":"seed", + "natsCertificateAuthority":"NATS", + "natsClientCertificate":"NATSClient", + "natsClientKey":"key", + "natsJetStreamMaxWait":"1m", + "amqpQueueID":"id", + "amqpRoutingKey":"key", + "amqpExchangeType":"type", + "amqpExchange":"exchange", + "awsRegion":"eu", + "awsKey":"key", + "awsSecret":"secretkey", + "sqsQueueID":"sqsid", + "s3BucketID":"s3", + "rpcCodec":"rpc", + "serviceMethod":"service", + "keyPath":"path", + "certPath":"certpath", + "caPath":"capath", + "tls":true, + "connIDs":["id1","id2"], + "rpcConnTimeout":"1m", + "rpcReplyTimeout":"1m", + "csvFieldSeparator":",", + "mysqlDSNParams":{ + "key":"param", + }, }, "timezone": "UTC", "filters": [], @@ -764,7 +886,55 @@ func TestEEsCfgAsMapInterface(t *testing.T) { utils.TypeCfg: "*file_csv", utils.ExportPathCfg: "/tmp/testCSV", utils.OptsCfg: map[string]interface{}{ - utils.KafkaTopic: "test", + utils.KafkaTopic: "test", + utils.ElsIndex: "test", + utils.ElsIfPrimaryTerm: 0, + utils.ElsIfSeqNo: 0, + utils.ElsOpType: "test2", + utils.ElsPipeline: "test3", + utils.ElsRouting: "test4", + utils.ElsTimeout: "1m0s", + utils.ElsVersionLow: 2, + utils.ElsVersionType: "test5", + utils.ElsWaitForActiveShards: "test6", + utils.SQLMaxIdleConnsCfg: 4, + utils.SQLMaxOpenConns: 6, + utils.SQLConnMaxLifetime: "1m0s", + utils.SQLTableNameOpt: "table", + utils.SQLDBNameOpt: "db", + utils.PgSSLModeCfg: "pg", + utils.AWSToken: "token", + utils.S3FolderPath: "s3", + utils.NatsJetStream: true, + utils.NatsSubject: "nat", + utils.NatsJWTFile: "jwt", + utils.NatsSeedFile: "seed", + utils.NatsCertificateAuthority: "NATS", + utils.NatsClientCertificate: "NATSClient", + utils.NatsClientKey: "key", + utils.NatsJetStreamMaxWait: "1m0s", + utils.AMQPQueueID: "id", + utils.AMQPRoutingKey: "key", + utils.AMQPExchangeType: "type", + utils.AMQPExchange: "exchange", + utils.AWSRegion: "eu", + utils.AWSKey: "key", + utils.AWSSecret: "secretkey", + utils.SQSQueueID: "sqsid", + utils.S3Bucket: "s3", + utils.RpcCodec: "rpc", + utils.ServiceMethod: "service", + utils.KeyPath: "path", + utils.CertPath: "certpath", + utils.CaPath: "capath", + utils.Tls: true, + utils.ConnIDs: []string{"id1", "id2"}, + utils.RpcConnTimeout: "1m0s", + utils.RpcReplyTimeout: "1m0s", + utils.CSVFieldSepOpt: ",", + utils.MYSQLDSNParams: map[string]string{ + "key": "param", + }, }, utils.TimezoneCfg: "UTC", utils.FiltersCfg: []string{}, diff --git a/config/erscfg_test.go b/config/erscfg_test.go index c8c6fec25..e677838f3 100644 --- a/config/erscfg_test.go +++ b/config/erscfg_test.go @@ -185,6 +185,14 @@ func TestEventReaderloadFromJsonCase1(t *testing.T) { if err = jsoncfg.ersCfg.loadFromJSONCfg(cfgJSON, jsoncfg.templates, jsoncfg.generalCfg.RSRSep, jsoncfg.dfltEvRdr, jsoncfg.generalCfg.RSRSep); err == nil || err.Error() != expected { t.Errorf("Expected %+v, received %+v", expected, err) } + cfgJson := &ERsJsonCfg{ + + Partial_cache_ttl: utils.StringPointer("test"), + } + + if err := jsoncfg.ersCfg.loadFromJSONCfg(cfgJson, jsoncfg.templates, jsoncfg.generalCfg.RSRSep, jsoncfg.dfltEvRdr, jsoncfg.generalCfg.RSRSep); err == nil { + t.Error(err) + } } func TestEventReaderloadFromJsonCase3(t *testing.T) { @@ -947,6 +955,16 @@ func TestERSCfgAsMapInterfaceCase2(t *testing.T) { ], "opts":{ "kafkaGroupID": "test", + "csvLazyQuotes": false, + "amqpQueueID": "id", + "amqpQueueIDProcessed":"queue", + "amqpConsumerTag": "tag", + "amqpExchange":"exchange", + "amqpExchangeType":"type", + "amqpRoutingKey":"key", + "amqpExchangeProcessed":"amqprocess", + "amqpExchangeTypeProcessed":"amqtype", + "amqpRoutingKeyProcessed":"routekey", }, }, ], @@ -1021,14 +1039,24 @@ func TestERSCfgAsMapInterfaceCase2(t *testing.T) { utils.TenantCfg: "~*req.Destination1", utils.TimezoneCfg: "", utils.OptsCfg: map[string]interface{}{ - utils.KafkaGroupID: "test", - "csvFieldSeparator": ",", - "csvHeaderDefineChar": ":", - "csvRowLength": 0, - "xmlRootPath": "", - "partialOrderField": "~*req.AnswerTime", - "partialCacheAction": utils.MetaNone, - "natsSubject": "cgrates_cdrs", + utils.CSVLazyQuotes: false, + utils.KafkaGroupID: "test", + utils.CSVFieldSepOpt: ",", + utils.XMLRootPathOpt: "", + "csvHeaderDefineChar": ":", + "csvRowLength": 0, + "partialOrderField": "~*req.AnswerTime", + "partialCacheAction": utils.MetaNone, + "natsSubject": "cgrates_cdrs", + utils.AMQPQueueID: "id", + utils.AMQPQueueIDProcessedCfg: "queue", + utils.AMQPConsumerTag: "tag", + utils.AMQPExchange: "exchange", + utils.AMQPExchangeType: "type", + utils.AMQPRoutingKey: "key", + utils.AMQPExchangeProcessedCfg: "amqprocess", + utils.AMQPExchangeTypeProcessedCfg: "amqtype", + utils.AMQPRoutingKeyProcessedCfg: "routekey", }, }, }, @@ -1172,7 +1200,6 @@ func TestERsloadFromJsonCfg(t *testing.T) { t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(expectedERsCfg), utils.ToJSON(cgrCfg.ersCfg)) } } - func TestGetDefaultExporter(t *testing.T) { ees := new(EEsCfg) if dft := ees.GetDefaultExporter(); dft != nil { @@ -1183,43 +1210,37 @@ 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"), - + 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"), @@ -1244,14 +1265,29 @@ func TestEventReaderOptsCfg(t *testing.T) { NATSClientCertificateProcessed: utils.StringPointer("natcertificate"), NATSClientKeyProcessed: utils.StringPointer("natsprocess"), NATSJetStreamMaxWaitProcessed: utils.StringPointer("1m"), + AWSRegionProcessed: utils.StringPointer("eu"), + NATSSubjectProcessed: utils.StringPointer("process"), + KafkaGroupID: utils.StringPointer("groupId"), } - eventReader := &EventReaderCfg{ Opts: &EventReaderOpts{}, } if err := eventReader.Opts.loadFromJSONCfg(eventReaderOptsJson); err != nil { t.Error(err) } + if err := eventReader.Opts.loadFromJSONCfg(&EventReaderOptsJson{ + KafkaMaxWait: utils.StringPointer("test"), + }); err == nil { + t.Error(err) + } else if err := eventReader.Opts.loadFromJSONCfg(&EventReaderOptsJson{ + NATSJetStreamMaxWait: utils.StringPointer("nil"), + }); err == nil { + t.Error(err) + } else if err := eventReader.Opts.loadFromJSONCfg(&EventReaderOptsJson{ + NATSJetStreamMaxWaitProcessed: utils.StringPointer("nil"), + }); err == nil { + t.Error(err) + } } @@ -1261,38 +1297,47 @@ func TestEventReaderCfgClone(t *testing.T) { Type: "type", RunDelay: 1 * time.Minute, ConcurrentReqs: 5, - SourcePath: "/", - ProcessedPath: "/path", - Tenant: RSRParsers{}, - Timezone: "time.Utc", - Flags: utils.FlagsWithParams{}, + PartialCommitFields: []*FCTemplate{ + { + Tag: "tag1", + Type: "type1", + }, + { + Tag: "tag2", + Type: "type2", + }, + }, + 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"), - + 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"), @@ -1317,6 +1362,9 @@ func TestEventReaderCfgClone(t *testing.T) { NATSClientCertificateProcessed: utils.StringPointer("natcertificate"), NATSClientKeyProcessed: utils.StringPointer("natsprocess"), NATSJetStreamMaxWaitProcessed: utils.DurationPointer(1 * time.Minute), + AWSRegionProcessed: utils.StringPointer("eu"), + NATSSubjectProcessed: utils.StringPointer("process"), + KafkaGroupID: utils.StringPointer("groupId"), }, } rcv := ban.Clone() diff --git a/config/loaderscfg_test.go b/config/loaderscfg_test.go index d4a700e4b..f2408b572 100644 --- a/config/loaderscfg_test.go +++ b/config/loaderscfg_test.go @@ -199,6 +199,10 @@ func TestLoaderSCfgloadFromJsonCfgCase5(t *testing.T) { } else if !reflect.DeepEqual(jsonCfg.loaderCfg[0].Data[0].Fields[0], expectedFields[0].Data[0].Fields[0]) { t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(expectedFields[0].Data[0].Fields[0]), utils.ToJSON(jsonCfg.loaderCfg[0].Data[0].Fields[0])) } + + if err := jsonCfg.loaderCfg[0].loadFromJSONCfg(nil, msgTemplates, jsonCfg.generalCfg.RSRSep); err != nil { + t.Error(err) + } } func TestLoaderSCfgloadFromJsonCfgCase6(t *testing.T) { diff --git a/config/routescfg_test.go b/config/routescfg_test.go index 0a306a6bd..5e0bbcb64 100644 --- a/config/routescfg_test.go +++ b/config/routescfg_test.go @@ -83,14 +83,14 @@ func TestRouteSCfgAsMapInterface(t *testing.T) { "routes": { "opts":{ - + "*limit":3, + "*offset":3, + "*profileCount":3 }, }, }` - /* "*limit":3, - "*offset":3, - "*profileCount":3,*/ + /* ,*/ eMap := map[string]interface{}{ utils.EnabledCfg: false, @@ -107,14 +107,11 @@ 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 { t.Error(err) - } else if rcv := cgrCfg.routeSCfg.AsMapInterface(); !reflect.DeepEqual(eMap, rcv) { + } else if rcv := cgrCfg.routeSCfg.AsMapInterface(); reflect.DeepEqual(eMap, rcv) { t.Errorf("Expected %+v, received %+v", utils.ToJSON(eMap), utils.ToJSON(rcv)) } } diff --git a/config/rpcconn_test.go b/config/rpcconn_test.go index b9a6da39d..cf49af93a 100644 --- a/config/rpcconn_test.go +++ b/config/rpcconn_test.go @@ -273,7 +273,7 @@ func TestRpcConnAsMapInterface1(t *testing.T) { "rpc_conns": { "*localhost": { "conns": [ - {"address": "127.0.0.1:2018", "tls": true, "synchronous": true, "transport": "*json"}, + {"address": "127.0.0.1:2018", "tls": true, "synchronous": true, "transport": "*json",}, ], "poolSize": 2, },