Refactored tests in services

This commit is contained in:
root
2021-02-23 14:35:14 +02:00
committed by Dan Christian Bogos
parent c42bffcd23
commit ecff647d59
3 changed files with 37 additions and 87 deletions

View File

@@ -69,10 +69,10 @@ func TestEventExporterSReload(t *testing.T) {
srvMngr.AddServices(ees, attrS,
NewLoaderService(cfg, db, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep), db)
if err := srvMngr.StartServices(); err != nil {
t.Error(err)
t.Fatal(err)
}
if ees.IsRunning() {
t.Errorf("Expected service to be down")
t.Fatalf("Expected service to be down")
}
fcTmp := &config.FCTemplate{Tag: "TenantID",
Path: "Tenant",
@@ -88,27 +88,27 @@ func TestEventExporterSReload(t *testing.T) {
Path: path.Join("/usr", "share", "cgrates", "conf", "samples", "ees"),
Section: config.EEsJson,
}, &reply); err != nil {
t.Error(err)
t.Fatal(err)
} else if reply != utils.OK {
t.Errorf("Expecting OK ,received %s", reply)
t.Fatalf("Expecting OK ,received %s", reply)
}
time.Sleep(10 * time.Millisecond) //need to switch to gorutine
if !ees.IsRunning() {
t.Errorf("Expected service to be running")
t.Fatalf("Expected service to be running")
}
err := ees.Start()
if err == nil || err != utils.ErrServiceAlreadyRunning {
t.Errorf("\nExpecting <%+v>,\n Received <%+v>", utils.ErrServiceAlreadyRunning, err)
t.Fatalf("\nExpecting <%+v>,\n Received <%+v>", utils.ErrServiceAlreadyRunning, err)
}
err = ees.Reload()
if err != nil {
t.Errorf("\nExpecting <nil>,\n Received <%+v>", err)
t.Fatalf("\nExpecting <nil>,\n Received <%+v>", err)
}
cfg.EEsCfg().Enabled = false
cfg.GetReloadChan(config.EEsJson) <- struct{}{}
time.Sleep(10 * time.Millisecond)
if ees.IsRunning() {
t.Errorf("Expected service to be down")
t.Fatalf("Expected service to be down")
}
shdChan.CloseOnce()
time.Sleep(10 * time.Millisecond)

View File

@@ -107,9 +107,10 @@ WILLFIX
if !canCastSrv {
t.Fatalf("cannot cast")
}
castSrv.sip = srvSIP
castSrv.oldListen = "test_string"
err = srv.Reload()
if err != nil {
t.Fatalf("\nExpecting <err>,\n Received <%+v>", err)
t.Fatalf("\nExpecting <nil>,\n Received <%+v>", err)
}
*/

View File

@@ -862,31 +862,14 @@ func TestStorDBReloadVersion1(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
shdChan := utils.NewSyncedChan()
shdWg := new(sync.WaitGroup)
chS := engine.NewCacheS(cfg, nil, nil)
cfg.ChargerSCfg().Enabled = true
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(cfg, shdChan, shdWg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
cfg.StorDbCfg().Password = "CGRateS.org"
stordb := NewStorDBService(cfg, srvDep)
stordb.oldDBCfg = cfg.StorDbCfg().Clone()
anz := NewAnalyzerService(cfg, server, filterSChan, shdChan, make(chan rpcclient.ClientConnector, 1), srvDep)
chrS := NewChargerService(cfg, db, chS, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep)
schS := NewSchedulerService(cfg, db, chS, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep)
ralS := NewRalService(cfg, chS, server,
make(chan rpcclient.ClientConnector, 1),
make(chan rpcclient.ClientConnector, 1),
shdChan, nil, anz, srvDep)
cdrsRPC := make(chan rpcclient.ClientConnector, 1)
cdrS := NewCDRServer(cfg, db, stordb, filterSChan, server,
cdrsRPC, nil, anz, srvDep)
srvMngr.AddServices(cdrS, ralS, schS, chrS,
NewLoaderService(cfg, db, filterSChan, server,
make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep), db, stordb)
if err := srvMngr.StartServices(); err != nil {
t.Error(err)
err = stordb.Start()
if err != nil {
t.Fatal(err)
}
stordb.db = nil
err = stordb.Reload()
@@ -895,7 +878,10 @@ func TestStorDBReloadVersion1(t *testing.T) {
}
cfg.CdrsCfg().Enabled = false
cfg.GetReloadChan(config.CDRS_JSN) <- struct{}{}
err = stordb.Reload()
if err == nil || err.Error() != "can't conver StorDB of type mongo to MongoStorage" {
t.Fatal(err)
}
time.Sleep(10 * time.Millisecond)
shdChan.CloseOnce()
time.Sleep(10 * time.Millisecond)
@@ -957,54 +943,35 @@ func TestStorDBReloadVersion2(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
shdChan := utils.NewSyncedChan()
shdWg := new(sync.WaitGroup)
chS := engine.NewCacheS(cfg, nil, nil)
cfg.ChargerSCfg().Enabled = true
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(cfg, shdChan, shdWg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
cfg.StorDbCfg().Password = "CGRateS.org"
stordb := NewStorDBService(cfg, srvDep)
stordb.oldDBCfg = cfg.StorDbCfg().Clone()
anz := NewAnalyzerService(cfg, server, filterSChan, shdChan, make(chan rpcclient.ClientConnector, 1), srvDep)
chrS := NewChargerService(cfg, db, chS, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep)
schS := NewSchedulerService(cfg, db, chS, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep)
ralS := NewRalService(cfg, chS, server,
make(chan rpcclient.ClientConnector, 1),
make(chan rpcclient.ClientConnector, 1),
shdChan, nil, anz, srvDep)
cdrsRPC := make(chan rpcclient.ClientConnector, 1)
cdrS := NewCDRServer(cfg, db, stordb, filterSChan, server,
cdrsRPC, nil, anz, srvDep)
srvMngr.AddServices(cdrS, ralS, schS, chrS,
NewLoaderService(cfg, db, filterSChan, server,
make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep), db, stordb)
if err := srvMngr.StartServices(); err != nil {
t.Error(err)
err = stordb.Start()
if err != nil {
t.Fatal(err)
}
stordb.db = nil
err = stordb.Reload()
if err == nil || err.Error() != "can't conver StorDB of type mysql to SQLStorage" {
t.Fatal(err)
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", "can't convert StorDB of type mysql to SQLStorage", err)
}
cfg.CdrsCfg().Enabled = false
cfg.GetReloadChan(config.CDRS_JSN) <- struct{}{}
time.Sleep(10 * time.Millisecond)
shdChan.CloseOnce()
time.Sleep(10 * time.Millisecond)
err = stordb.Reload()
if err == nil || err.Error() != "can't conver StorDB of type mysql to SQLStorage" {
t.Errorf("\nExpected <%+v>, \nReceived <%+v>", "can't convert StorDB of type mysql to SQLStorage", err)
time.Sleep(10 * time.Millisecond)
shdChan.CloseOnce()
time.Sleep(10 * time.Millisecond)
}
}
/*
WILLFIX
func TestStorDBReloadVersion3(t *testing.T) {
cfg, err := config.NewCGRConfigFromPath(path.Join("/usr", "share", "cgrates", "conf", "samples", "tutinternal"))
if err != nil {
t.Fatal(err)
}
storageDb, err := engine.NewStorDBConn(cfg.StorDbCfg().Type,
cfg.StorDbCfg().Host, cfg.StorDbCfg().Port,
cfg.StorDbCfg().Name, cfg.StorDbCfg().User,
@@ -1014,12 +981,10 @@ func TestStorDBReloadVersion3(t *testing.T) {
if err != nil {
t.Fatal(err)
}
defer func() {
storageDb.Flush("")
storageDb.Close()
}()
err = storageDb.SetVersions(engine.Versions{
utils.CostDetails: 2,
utils.SessionSCosts: 3,
@@ -1055,42 +1020,26 @@ func TestStorDBReloadVersion3(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
shdChan := utils.NewSyncedChan()
shdWg := new(sync.WaitGroup)
chS := engine.NewCacheS(cfg, nil, nil)
cfg.ChargerSCfg().Enabled = true
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(cfg, shdChan, shdWg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
cfg.StorDbCfg().Password = "CGRateS.org"
stordb := NewStorDBService(cfg, srvDep)
stordb.oldDBCfg = cfg.StorDbCfg().Clone()
anz := NewAnalyzerService(cfg, server, filterSChan, shdChan, make(chan rpcclient.ClientConnector, 1), srvDep)
chrS := NewChargerService(cfg, db, chS, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep)
schS := NewSchedulerService(cfg, db, chS, filterSChan, server, make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep)
ralS := NewRalService(cfg, chS, server,
make(chan rpcclient.ClientConnector, 1),
make(chan rpcclient.ClientConnector, 1),
shdChan, nil, anz, srvDep)
cdrsRPC := make(chan rpcclient.ClientConnector, 1)
cdrS := NewCDRServer(cfg, db, stordb, filterSChan, server,
cdrsRPC, nil, anz, srvDep)
srvMngr.AddServices(cdrS, ralS, schS, chrS,
NewLoaderService(cfg, db, filterSChan, server,
make(chan rpcclient.ClientConnector, 1), nil, anz, srvDep), db, stordb)
if err := srvMngr.StartServices(); err != nil {
t.Error(err)
}
stordb.db = nil
err = stordb.Reload()
if err == nil || err.Error() != "can't conver StorDB of type internal to InternalDB" {
t.Fatal(err)
}
err = stordb.Start()
if err == nil {
t.Fatal(err)
}
cfg.CdrsCfg().Enabled = false
cfg.GetReloadChan(config.CDRS_JSN) <- struct{}{}
err = stordb.Reload()
if err != nil {
t.Fatal(err)
}
time.Sleep(10 * time.Millisecond)
shdChan.CloseOnce()
time.Sleep(10 * time.Millisecond)
}
*/