mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-24 16:48:45 +05:00
Add new unit tests on services
This commit is contained in:
committed by
Dan Christian Bogos
parent
d31b4d0984
commit
62a20d1ce8
@@ -84,3 +84,38 @@ func TestAsteriskAgentCoverage(t *testing.T) {
|
||||
t.Errorf("Expected service to be down")
|
||||
}
|
||||
}
|
||||
|
||||
func TestAsteriskReload(t *testing.T) {
|
||||
cfg := config.NewDefaultCGRConfig()
|
||||
cfg.SessionSCfg().Enabled = true
|
||||
cfg.SessionSCfg().ListenBijson = ""
|
||||
filterSChan := make(chan *engine.FilterS, 1)
|
||||
filterSChan <- nil
|
||||
shdChan := utils.NewSyncedChan()
|
||||
chS := engine.NewCacheS(cfg, nil, nil)
|
||||
cacheSrv, err := engine.NewService(chS)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
cacheSChan := make(chan birpc.ClientConnector, 1)
|
||||
cacheSChan <- cacheSrv
|
||||
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
|
||||
astSrv := NewAsteriskAgent(cfg, shdChan, nil, srvDep)
|
||||
if astSrv == nil {
|
||||
t.Errorf("\nExpecting <nil>,\n Received <%+v>", utils.ToJSON(astSrv))
|
||||
}
|
||||
srv2 := &AsteriskAgent{
|
||||
RWMutex: sync.RWMutex{},
|
||||
cfg: cfg,
|
||||
shdChan: shdChan,
|
||||
stopChan: nil,
|
||||
smas: nil,
|
||||
connMgr: nil,
|
||||
srvDep: srvDep,
|
||||
}
|
||||
srv2.stopChan = make(chan struct{}, 1)
|
||||
err3 := srv2.Reload()
|
||||
if err3 != nil {
|
||||
t.Errorf("\nExpecting <nil>,\n Received <%+v>", err3)
|
||||
}
|
||||
}
|
||||
|
||||
63
services/janusagent_test.go
Normal file
63
services/janusagent_test.go
Normal file
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
Real-time Online/Offline Charging System (OCS) for Telecom & ISP environments
|
||||
Copyright (C) ITsysCOM GmbH
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
*/
|
||||
|
||||
package services
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"sync"
|
||||
"testing"
|
||||
|
||||
"github.com/cgrates/birpc"
|
||||
"github.com/cgrates/cgrates/config"
|
||||
"github.com/cgrates/cgrates/cores"
|
||||
"github.com/cgrates/cgrates/engine"
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
)
|
||||
|
||||
func TestJanusAgentCoverage(t *testing.T) {
|
||||
cfg := config.NewDefaultCGRConfig()
|
||||
server := cores.NewServer(nil)
|
||||
filterSChan := make(chan *engine.FilterS, 1)
|
||||
filterSChan <- nil
|
||||
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
|
||||
rpcInternal := map[string]chan birpc.ClientConnector{}
|
||||
cM := engine.NewConnManager(cfg, rpcInternal)
|
||||
srv := NewJanusAgent(cfg, filterSChan, server, cM, srvDep)
|
||||
if srv == nil {
|
||||
t.Errorf("\nExpecting <nil>,\n Received <%+v>", utils.ToJSON(srv))
|
||||
}
|
||||
if srv.IsRunning() {
|
||||
t.Errorf("Expected service to be down")
|
||||
}
|
||||
srv2 := &JanusAgent{
|
||||
cfg: cfg,
|
||||
filterSChan: filterSChan,
|
||||
server: server,
|
||||
started: true,
|
||||
connMgr: cM,
|
||||
srvDep: srvDep,
|
||||
}
|
||||
if !srv2.IsRunning() {
|
||||
t.Errorf("Expected service to be running")
|
||||
}
|
||||
serviceName := srv2.ServiceName()
|
||||
if !reflect.DeepEqual(serviceName, utils.JanusAgent) {
|
||||
t.Errorf("\nExpecting <%+v>,\n Received <%+v>", utils.JanusAgent, serviceName)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user