From 5c3816f60ca60db75df252bc4b6ee185c1413b55 Mon Sep 17 00:00:00 2001 From: adragusin Date: Mon, 11 Nov 2019 17:57:47 +0200 Subject: [PATCH] Updated tests in session --- engine/mapevent.go | 3 ++ sessions/session_test.go | 68 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) diff --git a/engine/mapevent.go b/engine/mapevent.go index 28137e130..053f6044c 100644 --- a/engine/mapevent.go +++ b/engine/mapevent.go @@ -154,6 +154,9 @@ func (me MapEvent) GetTimeIgnoreErrors(fldName string, tmz string) (t time.Time) // Clone returns the cloned map func (me MapEvent) Clone() (mp MapEvent) { + if me == nil { + return nil + } mp = make(MapEvent, len(me)) for k, v := range me { mp[k] = v diff --git a/sessions/session_test.go b/sessions/session_test.go index 0a3fea679..7e7603c8e 100644 --- a/sessions/session_test.go +++ b/sessions/session_test.go @@ -27,6 +27,74 @@ import ( "github.com/cgrates/cgrates/utils" ) +func TestSessionIDCGRID(t *testing.T) { + //empty check + sessionID := new(SessionID) + rcv := sessionID.CGRID() + eOut := "da39a3ee5e6b4b0d3255bfef95601890afd80709" + if !reflect.DeepEqual(eOut, rcv) { + t.Errorf("Expecting: %s, received: %s", utils.ToJSON(eOut), utils.ToJSON(rcv)) + } + //normal check + sessionID.OriginHost = "testhost" + sessionID.OriginID = "testid" + rcv = sessionID.CGRID() + eOut = "2aaff7e3e832de08b0604a79a18ccc6bba823360" + if !reflect.DeepEqual(eOut, rcv) { + t.Errorf("Expecting: %s, received: %s", utils.ToJSON(eOut), utils.ToJSON(rcv)) + } +} + +func TestSessionCgrID(t *testing.T) { + //empty check + session := new(Session) + rcv := session.cgrID() + eOut := "" + if !reflect.DeepEqual(eOut, rcv) { + t.Errorf("Expecting: %s, received: %s", utils.ToJSON(eOut), utils.ToJSON(rcv)) + } + //normal check + session.CGRID = "testID" + eOut = "testID" + rcv = session.cgrID() + if !reflect.DeepEqual(eOut, rcv) && session.CGRID == "testID" { + t.Errorf("Expecting: %s, received: %s", utils.ToJSON(eOut), utils.ToJSON(rcv)) + } + +} + +func TestSessionClone(t *testing.T) { + //empty check + session := new(Session) + rcv := session.Clone() + eOut := new(Session) + if !reflect.DeepEqual(eOut, rcv) { + t.Errorf("Expecting: %s, received: %s", utils.ToJSON(eOut), utils.ToJSON(rcv)) + } + //normal check + session = &Session{ + CGRID: "CGRID", + Tenant: "cgrates.org", + ResourceID: "resourceID", + ClientConnID: "ClientConnID", + EventStart: engine.NewMapEvent(nil), + DebitInterval: time.Duration(18), + } + eOut = &Session{ + CGRID: "CGRID", + Tenant: "cgrates.org", + ResourceID: "resourceID", + ClientConnID: "ClientConnID", + EventStart: engine.NewMapEvent(nil), + DebitInterval: time.Duration(18), + } + rcv = session.Clone() + if !reflect.DeepEqual(eOut, rcv) && session.CGRID == "testID" { + t.Errorf("Expecting: %s, received: %s", utils.ToJSON(eOut), utils.ToJSON(rcv)) + } + +} + //Test1 ExtraDuration 0 and LastUsage < initial //Test1 ExtraDuration 0 and LastUsage < initial