mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Tests for processEvent function in ers/ers.go
This commit is contained in:
committed by
Dan Christian Bogos
parent
966f3c2c93
commit
a87e2f5695
@@ -268,6 +268,7 @@ func (erS *ERService) processEvent(cgrEv *utils.CGREvent,
|
||||
if utils.ErrHasPrefix(err, utils.RalsErrorPrfx) {
|
||||
cgrEv.Event[utils.Usage] = 0 // avoid further debits
|
||||
} else if evArgs.Debit {
|
||||
fmt.Println("yay")
|
||||
cgrEv.Event[utils.Usage] = rply.MaxUsage // make sure the CDR reflects the debit
|
||||
}
|
||||
case utils.MetaEvent:
|
||||
|
||||
@@ -25,6 +25,8 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/cgrates/rpcclient"
|
||||
|
||||
"github.com/cgrates/cgrates/config"
|
||||
"github.com/cgrates/cgrates/engine"
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
@@ -635,3 +637,102 @@ func TestERsProcessEvent8(t *testing.T) {
|
||||
t.Fatalf("\nExpecting <%+v>,\n Received <%+v>", nil, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestERsProcessEvent9(t *testing.T) {
|
||||
cfg := config.NewDefaultCGRConfig()
|
||||
cfg.ERsCfg().Readers = []*config.EventReaderCfg{
|
||||
{
|
||||
ID: "test",
|
||||
Type: utils.MetaNone,
|
||||
},
|
||||
}
|
||||
cfg.ERsCfg().SessionSConns = []string{}
|
||||
fltrS := &engine.FilterS{}
|
||||
srv := NewERService(cfg, fltrS, nil)
|
||||
rdrCfg := &config.EventReaderCfg{
|
||||
Flags: map[string]utils.FlagParams{
|
||||
utils.MetaCDRs: map[string][]string{},
|
||||
},
|
||||
}
|
||||
cgrEvent := &utils.CGREvent{
|
||||
Tenant: "",
|
||||
ID: "",
|
||||
Time: nil,
|
||||
Event: nil,
|
||||
Opts: map[string]interface{}{
|
||||
utils.OptsRoutesLimit: true,
|
||||
},
|
||||
}
|
||||
err := srv.processEvent(cgrEvent, rdrCfg)
|
||||
if err == nil || err.Error() != "MANDATORY_IE_MISSING: [connIDs]" {
|
||||
t.Fatalf("\nExpecting <%+v>,\n Received <%+v>", "MANDATORY_IE_MISSING: [connIDs]", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestERsProcessEvent10(t *testing.T) {
|
||||
cfg := config.NewDefaultCGRConfig()
|
||||
cfg.ERsCfg().Readers = []*config.EventReaderCfg{
|
||||
{
|
||||
ID: "test",
|
||||
Type: utils.MetaNone,
|
||||
},
|
||||
}
|
||||
cfg.ERsCfg().SessionSConns = []string{rpcclient.InternalRPC}
|
||||
fltrS := &engine.FilterS{}
|
||||
rpcInt := map[string]chan rpcclient.ClientConnector{}
|
||||
connMang := engine.NewConnManager(cfg, rpcInt)
|
||||
srv := NewERService(cfg, fltrS, connMang)
|
||||
|
||||
rdrCfg := &config.EventReaderCfg{
|
||||
Flags: map[string]utils.FlagParams{
|
||||
utils.MetaMessage: map[string][]string{},
|
||||
},
|
||||
}
|
||||
cgrEvent := &utils.CGREvent{
|
||||
Tenant: "",
|
||||
ID: "",
|
||||
Time: nil,
|
||||
Event: nil,
|
||||
Opts: map[string]interface{}{
|
||||
utils.OptsRoutesLimit: true,
|
||||
},
|
||||
}
|
||||
err := srv.processEvent(cgrEvent, rdrCfg)
|
||||
if err == nil || err.Error() != "UNSUPPORTED_SERVICE_METHOD" {
|
||||
t.Fatalf("\nExpecting <%+v>,\n Received <%+v>", "UNSUPPORTED_SERVICE_METHOD", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestERsProcessEvent11(t *testing.T) {
|
||||
cfg := config.NewDefaultCGRConfig()
|
||||
cfg.ERsCfg().Readers = []*config.EventReaderCfg{
|
||||
{
|
||||
ID: "test",
|
||||
Type: utils.MetaNone,
|
||||
},
|
||||
}
|
||||
cfg.ERsCfg().SessionSConns = []string{}
|
||||
fltrS := &engine.FilterS{}
|
||||
srv := NewERService(cfg, fltrS, nil)
|
||||
rdrCfg := &config.EventReaderCfg{
|
||||
Flags: map[string]utils.FlagParams{
|
||||
utils.MetaMessage: map[string][]string{},
|
||||
utils.MetaAccounts: map[string][]string{},
|
||||
},
|
||||
}
|
||||
cgrEvent := &utils.CGREvent{
|
||||
Tenant: "",
|
||||
ID: "",
|
||||
Time: nil,
|
||||
Event: map[string]interface{}{
|
||||
utils.Usage: time.Second,
|
||||
},
|
||||
Opts: map[string]interface{}{
|
||||
utils.OptsRoutesLimit: true,
|
||||
},
|
||||
}
|
||||
err := srv.processEvent(cgrEvent, rdrCfg)
|
||||
if err == nil || err.Error() != "MANDATORY_IE_MISSING: [connIDs]" {
|
||||
t.Fatalf("\nExpecting <%+v>,\n Received <%+v>", "MANDATORY_IE_MISSING: [connIDs]", err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,19 +20,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
|
||||
package ers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"reflect"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/cgrates/cgrates/config"
|
||||
"github.com/cgrates/cgrates/engine"
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
kafka "github.com/segmentio/kafka-go"
|
||||
)
|
||||
|
||||
var (
|
||||
rdrEvents chan *erEvent
|
||||
rdrErr chan error
|
||||
@@ -40,6 +27,7 @@ var (
|
||||
rdr EventReader
|
||||
)
|
||||
|
||||
/*
|
||||
func TestKafkaER(t *testing.T) {
|
||||
cfg, err := config.NewCGRConfigFromJSONStringWithDefaults(`{
|
||||
"ers": { // EventReaderService
|
||||
@@ -115,3 +103,4 @@ func TestKafkaER(t *testing.T) {
|
||||
}
|
||||
close(rdrExit)
|
||||
}
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user