diff --git a/registrarc/registrarc_it_test.go b/registrarc/registrarc_it_test.go index 5cb2219fb..4f9f0a154 100644 --- a/registrarc/registrarc_it_test.go +++ b/registrarc/registrarc_it_test.go @@ -184,38 +184,3 @@ func testDsphStopDispatcher(t *testing.T) { t.Error(err) } } - -func TestRegistrarcListenAndServe(t *testing.T) { - //cover purposes only - cfg := config.NewDefaultCGRConfig() - cfg.RegistrarCCfg().Dispatcher.Enabled = true - cfg.RegistrarCCfg().RPC.Enabled = true - regStSrv := NewRegistrarCService(cfg, nil) - stopChan := make(chan struct{}, 1) - rldChan := make(chan struct{}, 1) - rldChan <- struct{}{} - go func() { - time.Sleep(10 * time.Millisecond) - close(stopChan) - }() - regStSrv.ListenAndServe(stopChan, rldChan) - regStSrv.Shutdown() -} - -func TestRegistrarcregisterRPCHostsErr(t *testing.T) { - cfg := config.NewDefaultCGRConfig() - cfg.RegistrarCCfg().RPC.RegistrarSConns = []string{"testConnID"} - cfg.RegistrarCCfg().RPC.Hosts = map[string][]*config.RemoteHost{ - utils.MetaDefault: { - { - ID: "", - Address: "", - Transport: "", - Synchronous: false, - TLS: false, - }, - }, - } - regStSrv := NewRegistrarCService(cfg, nil) - regStSrv.registerRPCHosts() -} diff --git a/registrarc/registrarc_test.go b/registrarc/registrarc_test.go index ab7ce0d5e..d3bb2b208 100644 --- a/registrarc/registrarc_test.go +++ b/registrarc/registrarc_test.go @@ -123,3 +123,104 @@ func TestDispatcherHostsService(t *testing.T) { close(stopChan) ds.ListenAndServe(stopChan, make(chan struct{})) } + +func TestRegistrarcListenAndServe(t *testing.T) { + //cover purposes only + cfg := config.NewDefaultCGRConfig() + cfg.RegistrarCCfg().Dispatcher.Enabled = true + cfg.RegistrarCCfg().RPC.Enabled = true + regStSrv := NewRegistrarCService(cfg, nil) + stopChan := make(chan struct{}, 1) + rldChan := make(chan struct{}, 1) + rldChan <- struct{}{} + go func() { + time.Sleep(10 * time.Millisecond) + close(stopChan) + }() + regStSrv.ListenAndServe(stopChan, rldChan) + regStSrv.Shutdown() +} + +func TestRegistrarcregisterRPCHostsErr(t *testing.T) { + cfg := config.NewDefaultCGRConfig() + cfg.RegistrarCCfg().RPC.RegistrarSConns = []string{"testConnID"} + cfg.RegistrarCCfg().RPC.Hosts = map[string][]*config.RemoteHost{ + utils.MetaDefault: { + { + ID: "", + Address: "", + Transport: "", + Synchronous: false, + TLS: false, + }, + }, + } + regStSrv := NewRegistrarCService(cfg, nil) + regStSrv.registerRPCHosts() +} + +func TestRegisterRPCHosts(t *testing.T) { + cfg := config.NewDefaultCGRConfig() + cfg.RegistrarCCfg().RPC.RegistrarSConns = []string{"errCon1"} + cfg.RegistrarCCfg().RPC.Hosts = map[string][]*config.RemoteHost{ + "testHostKey": {}, + } + cfg.RPCConns()["errCon1"] = &config.RPCConn{ + Strategy: utils.MetaFirst, + PoolSize: 1, + Conns: []*config.RemoteHost{ + { + ID: "errCon1", + Address: "127.0.0.1:9999", + Transport: "*json", + Synchronous: true, + }, + }, + } + regist := &RegistrarCService{ + cfg: cfg, + connMgr: engine.NewConnManager(cfg, map[string]chan rpcclient.ClientConnector{}), + } + registCmp := &RegistrarCService{ + cfg: cfg, + connMgr: engine.NewConnManager(cfg, map[string]chan rpcclient.ClientConnector{}), + } + regist.registerRPCHosts() + if !reflect.DeepEqual(regist, registCmp) { + t.Errorf("Expected: %+v ,received: %+v", registCmp, regist) + } +} + +func TestRegistrarcListenAndServedTmCDispatcher(t *testing.T) { + //cover purposes only + cfg := config.NewDefaultCGRConfig() + cfg.RegistrarCCfg().Dispatcher.Enabled = true + cfg.RegistrarCCfg().Dispatcher.RefreshInterval = 1 + cfg.RegistrarCCfg().RPC.Enabled = true + regStSrv := NewRegistrarCService(cfg, nil) + stopChan := make(chan struct{}, 1) + rldChan := make(chan struct{}, 1) + go func() { + time.Sleep(20 * time.Millisecond) + close(stopChan) + }() + regStSrv.ListenAndServe(stopChan, rldChan) + regStSrv.Shutdown() +} + +func TestRegistrarcListenAndServedTmCRPC(t *testing.T) { + //cover purposes only + cfg := config.NewDefaultCGRConfig() + cfg.RegistrarCCfg().Dispatcher.Enabled = true + cfg.RegistrarCCfg().RPC.Enabled = true + cfg.RegistrarCCfg().RPC.RefreshInterval = 1 + regStSrv := NewRegistrarCService(cfg, nil) + stopChan := make(chan struct{}, 1) + rldChan := make(chan struct{}, 1) + go func() { + time.Sleep(20 * time.Millisecond) + close(stopChan) + }() + regStSrv.ListenAndServe(stopChan, rldChan) + regStSrv.Shutdown() +}