Add tests for sessions
This commit is contained in:
parent
ec1197f83c
commit
cb8e7f4fef
2
Makefile
2
Makefile
|
@ -4,7 +4,7 @@ all:
|
|||
go build -o telegabber
|
||||
|
||||
test:
|
||||
go test -v ./config ./ ./telegram ./xmpp/gateway
|
||||
go test -v ./config ./ ./telegram ./xmpp/gateway ./persistence
|
||||
|
||||
lint:
|
||||
$(GOPATH)/bin/golint ./...
|
||||
|
|
79
persistence/sessions_test.go
Normal file
79
persistence/sessions_test.go
Normal file
|
@ -0,0 +1,79 @@
|
|||
package persistence
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestEmptySessionsMap(t *testing.T) {
|
||||
var sm SessionsMap
|
||||
emptySessionsMap(&sm)
|
||||
if sm.Sessions == nil {
|
||||
t.Error("Session map is still empty!")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNoEmptySessionsMap(t *testing.T) {
|
||||
var sm SessionsMap
|
||||
if sm.Sessions != nil {
|
||||
t.Error("Session map is not empty at start!")
|
||||
}
|
||||
}
|
||||
|
||||
func TestSessionGet(t *testing.T) {
|
||||
session := Session{
|
||||
Timezone: "klsf",
|
||||
}
|
||||
tz, err := session.Get("timezone")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
if tz != "klsf" {
|
||||
t.Errorf("Wrong value from session: %s", tz)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSessionGetAbsent(t *testing.T) {
|
||||
session := Session{
|
||||
Timezone: "klsf",
|
||||
}
|
||||
_, err := session.Get("donkey")
|
||||
if err == nil {
|
||||
t.Error("There shouldn't be a donkey!")
|
||||
}
|
||||
}
|
||||
|
||||
func TestSessionToMap(t *testing.T) {
|
||||
session := Session{
|
||||
Timezone: "klsf",
|
||||
}
|
||||
m := session.ToMap()
|
||||
sample := map[string]string{
|
||||
"timezone": "klsf",
|
||||
}
|
||||
if !reflect.DeepEqual(m, sample) {
|
||||
t.Errorf("Map does not match the sample: %v", m)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSessionSet(t *testing.T) {
|
||||
session := Session{}
|
||||
tz, err := session.Set("timezone", "zaz")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
if tz != "zaz" {
|
||||
t.Errorf("Wrong set result: %s", tz)
|
||||
}
|
||||
if session.Timezone != "zaz" {
|
||||
t.Errorf("Wrong actual value in the session: %s", session.Timezone)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSessionSetAbsent(t *testing.T) {
|
||||
session := Session{}
|
||||
_, err := session.Set("donkey", "zaz")
|
||||
if err == nil {
|
||||
t.Error("There shouldn't come a donkey!")
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue