|
- package main
-
- import (
- "testing"
- "time"
- )
-
- func TestChatState(t *testing.T) {
- openID := "id"
- procedure := "getUserBasicProfile"
- s := chatState{}
- s.Name = "waiting for username"
- s.Expire = int32(time.Now().Unix() + 200)
- s.Save = map[string]string{
- "txt": "What is your date of birth?",
- "icon": "/mnt/data/abc.jpg",
- }
- s.response = "somexml less than 2018bytes"
-
- //save
- n, err := setCurrentState(openID, procedure, s)
- AssertEqual(t, err, nil, "save state should be successful")
-
- //read out
- m, _ := getCurrentState(openID, procedure)
-
- //compare
- AssertEqual(t, m.Name, n.Name, "Name should be equal")
- AssertEqual(t, m.Expire, n.Expire, "Expire should be equal")
- AssertEqual(t, m.Save["txt"], s.Save["txt"], "Message[txt] should be equal")
- AssertEqual(t, m.Save["icon"], s.Save["icon"], "Message[icon] should be equal")
- AssertEqual(t, m.OpenID, openID, "openID should be "+openID)
- AssertEqual(t, m.response, "", "response should be empty")
- AssertEqual(t, m.Procedure, procedure, "procedure should be "+procedure)
- AssertEqual(t, m.Save["txt"], n.Save["txt"], "Message[txt] should be equal")
- AssertEqual(t, m.Save["icon"], n.Save["icon"], "Message[icon] should be equal")
-
- err = deleteChatState(openID, procedure)
- AssertEqual(t, err, nil, "delete chatState should be good")
-
- }
-
- func TestStartProcedure(t *testing.T) {
- openID := "id"
- s := startProcedure(openID, "TestDummy")
- AssertEqual(t, s != nil, true, "TestDummy should return error")
- s = startProcedure(openID, "TestEcho")
- AssertEqual(t, s, nil, "TestEqual should return success")
- }
|