Unit tests for sessions.go file

This commit is contained in:
porosnicuadrian
2021-01-29 17:43:34 +02:00
committed by Dan Christian Bogos
parent 5de8480abc
commit cbd1ccda02
2 changed files with 49 additions and 0 deletions

View File

@@ -26,6 +26,8 @@ import (
"testing"
"time"
"github.com/cenkalti/rpc2"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/engine"
"github.com/cgrates/cgrates/utils"
@@ -85,6 +87,52 @@ func TestIsIndexed(t *testing.T) {
}
}
func TestOnBiJSONConnectDisconnect(t *testing.T) {
cfg := config.NewDefaultCGRConfig()
data := engine.NewInternalDB(nil, nil, true)
dm := engine.NewDataManager(data, cfg.CacheCfg(), nil)
sessions := NewSessionS(cfg, dm, nil)
//connect BiJSON
client := rpc2.NewClient(nil)
sessions.OnBiJSONConnect(client)
//we'll change the connection identifier just for testing
sessions.biJClnts[client] = "test_conn"
sessions.biJIDs = nil
expected := NewSessionS(cfg, dm, nil)
expected.biJClnts[client] = "test_conn"
expected.biJIDs = nil
if !reflect.DeepEqual(sessions, expected) {
t.Errorf("Expected %+v \n, received %+v", expected, sessions)
}
//Disconnect BiJSON
sessions.OnBiJSONDisconnect(client)
delete(expected.biJClnts, client)
if !reflect.DeepEqual(sessions, expected) {
t.Errorf("Expected %+v \n, received %+v", expected, sessions)
}
}
func TestBiRPCv1RegisterInternalBiJSONConn(t *testing.T) {
cfg := config.NewDefaultCGRConfig()
data := engine.NewInternalDB(nil, nil, true)
dm := engine.NewDataManager(data, cfg.CacheCfg(), nil)
sessions := NewSessionS(cfg, dm, nil)
client := rpc2.NewClient(nil)
var reply string
if err := sessions.BiRPCv1RegisterInternalBiJSONConn(client, utils.EmptyString, &reply); err != nil {
t.Error(err)
} else if reply != utils.OK {
t.Errorf("Expected %+v, received %+v", reply, utils.OK)
}
}
func TestSessionSIndexAndUnindexSessions(t *testing.T) {
sSCfg := config.NewDefaultCGRConfig()
sSCfg.SessionSCfg().SessionIndexes = utils.StringSet{

View File

@@ -0,0 +1 @@
package sessions