Cover tests in Dispatchers

This commit is contained in:
andronache
2021-04-14 10:27:30 +03:00
committed by Dan Christian Bogos
parent 94f1e4b0ba
commit 8869de64ee
2 changed files with 139 additions and 0 deletions

View File

@@ -21,6 +21,9 @@ package dispatchers
import (
"testing"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/engine"
"github.com/cgrates/cgrates/utils"
"github.com/cgrates/rpcclient"
)
@@ -51,3 +54,71 @@ func TestDispatcherCall2(t *testing.T) {
}
dS.Shutdown()
}
func TestDispatcherauthorizeEvent(t *testing.T) {
dm := &engine.DataManager{}
cfg := config.NewDefaultCGRConfig()
fltr := &engine.FilterS{}
connMgr := &engine.ConnManager{}
dsp := NewDispatcherService(dm, cfg, fltr, connMgr)
ev := &utils.CGREvent{}
reply := &engine.AttrSProcessEventReply{}
err := dsp.authorizeEvent(ev, reply)
expected := "MANDATORY_IE_MISSING: [connIDs]"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestDispatcherAuthorizeEventErr(t *testing.T) {
dm := &engine.DataManager{}
cfg := config.NewDefaultCGRConfig()
fltr := &engine.FilterS{}
connMgr := &engine.ConnManager{}
dsp := NewDispatcherService(dm, cfg, fltr, connMgr)
ev := &utils.CGREvent{}
reply := &engine.AttrSProcessEventReply{}
err := dsp.authorizeEvent(ev, reply)
expected := "MANDATORY_IE_MISSING: [connIDs]"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestDispatcherV1GetProfileForEventErr(t *testing.T) {
cfg := config.NewDefaultCGRConfig()
cfg.GeneralCfg().DefaultTenant = utils.EmptyString
dsp := NewDispatcherService(nil, cfg, nil, nil)
ev := &utils.CGREvent{}
dPfl := &engine.DispatcherProfile{}
err := dsp.V1GetProfileForEvent(ev, dPfl)
expected := "DISPATCHER_ERROR:NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestDispatcherV1GetProfileForEvent(t *testing.T) {
cfg := config.NewDefaultCGRConfig()
cfg.GeneralCfg().DefaultTenant = utils.EmptyString
dsp := NewDispatcherService(nil, cfg, nil, nil)
ev := &utils.CGREvent{}
dPfl := &engine.DispatcherProfile{}
err := dsp.V1GetProfileForEvent(ev, dPfl)
expected := "DISPATCHER_ERROR:NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestDispatcherDispatch(t *testing.T) {
cfg := config.NewDefaultCGRConfig()
cfg.GeneralCfg().DefaultTenant = utils.EmptyString
dsp := NewDispatcherService(nil, cfg, nil, nil)
ev := &utils.CGREvent{}
err := dsp.Dispatch(ev, "", "", "", "")
expected := "DISPATCHER_ERROR:NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}

View File

@@ -23,6 +23,8 @@ import (
"sync"
"testing"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/engine"
"github.com/cgrates/cgrates/utils"
"github.com/cgrates/rpcclient"
@@ -650,3 +652,69 @@ func TestLibDispatcherRoundRobinDispatch(t *testing.T) {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", nil, result)
}
}
func TestLibDispatcherSingleResultstrategyDispatcherDispatch(t *testing.T) {
wgDsp := &singleResultstrategyDispatcher{}
dataDB := engine.NewInternalDB(nil, nil, true)
dM := engine.NewDataManager(dataDB, config.CgrConfig().CacheCfg(), nil)
err := wgDsp.dispatch(dM, "", "", "", []string{""}, "", "", "")
expected := "HOST_NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestLibDispatcherSingleResultstrategyDispatcherDispatchRouteID(t *testing.T) {
wgDsp := &singleResultstrategyDispatcher{}
dataDB := engine.NewInternalDB(nil, nil, true)
dM := engine.NewDataManager(dataDB, config.CgrConfig().CacheCfg(), nil)
err := wgDsp.dispatch(dM, "routeID", "", "", []string{""}, "", "", "")
expected := "HOST_NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestLibDispatcherBroadcastStrategyDispatcherDispatch(t *testing.T) {
wgDsp := &broadcastStrategyDispatcher{}
dataDB := engine.NewInternalDB(nil, nil, true)
dM := engine.NewDataManager(dataDB, config.CgrConfig().CacheCfg(), nil)
err := wgDsp.dispatch(dM, "", "", "", []string{""}, "", "", "")
expected := "HOST_NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestLibDispatcherBroadcastStrategyDispatcherDispatchRouteID(t *testing.T) {
wgDsp := &broadcastStrategyDispatcher{}
dataDB := engine.NewInternalDB(nil, nil, true)
dM := engine.NewDataManager(dataDB, config.CgrConfig().CacheCfg(), nil)
err := wgDsp.dispatch(dM, "routeID", "", "", []string{""}, "", "", "")
expected := "HOST_NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestLibDispatcherLoadStrategyDispatcherDispatch(t *testing.T) {
wgDsp := &loadStrategyDispatcher{}
dataDB := engine.NewInternalDB(nil, nil, true)
dM := engine.NewDataManager(dataDB, config.CgrConfig().CacheCfg(), nil)
err := wgDsp.dispatch(dM, "", "", "", []string{""}, "", "", "")
expected := "HOST_NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}
func TestLibDispatcherLoadStrategyDispatcherDispatchHostsID(t *testing.T) {
wgDsp := &loadStrategyDispatcher{}
dataDB := engine.NewInternalDB(nil, nil, true)
dM := engine.NewDataManager(dataDB, config.CgrConfig().CacheCfg(), nil)
err := wgDsp.dispatch(dM, "routeID", "", "", []string{"hostID1", "hostID2"}, "", "", "")
expected := "HOST_NOT_FOUND"
if err == nil || err.Error() != expected {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", expected, err)
}
}