You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 satır
1.1KB

  1. package main
  2. import (
  3. "testing"
  4. )
  5. func TestChatState(t *testing.T) {
  6. openID := "id"
  7. procedure := "getUserBasicProfile"
  8. s := createEmptyState(openID, procedure, 100)
  9. s.Name = "waiting for username"
  10. s.Data = map[string]string{
  11. "txt": "What is your date of birth?",
  12. "icon": "/mnt/data/abc.jpg",
  13. }
  14. //save
  15. err := s.Save()
  16. AssertEqual(t, err, nil, "save state should be successful")
  17. //read out
  18. m := chatState{}
  19. m.Load(openID, procedure)
  20. //compare
  21. AssertEqual(t, m.Name, s.Name, "Name should be equal")
  22. AssertEqual(t, m.Expire, s.Expire, "Expire should be equal")
  23. AssertEqual(t, m.Data["txt"], s.Data["txt"], "Message[txt] should be equal")
  24. AssertEqual(t, m.Data["icon"], s.Data["icon"], "Message[icon] should be equal")
  25. AssertEqual(t, m.OpenID, openID, "openID should be "+openID)
  26. AssertEqual(t, m.Procedure, procedure, "procedure should be "+procedure)
  27. AssertEqual(t, m.Data["txt"], s.Data["txt"], "Message[txt] should be equal")
  28. AssertEqual(t, m.Data["icon"], s.Data["icon"], "Message[icon] should be equal")
  29. err = s.Delete()
  30. AssertEqual(t, err, nil, "delete chatState should be good")
  31. }