1
bot/models/reply_test.go
Andrew Privalov 96a4c359a7
v7.0 (#55)
* API v7.0

* readme
2024-01-10 15:16:04 +03:00

111 lines
2.1 KiB
Go

package models
import (
"encoding/json"
"testing"
)
func TestUnmarshalMessageOrigin_user(t *testing.T) {
src := `{"type":"user","date":123,"sender_user":{"id":123}}`
var mo MessageOrigin
err := json.Unmarshal([]byte(src), &mo)
if err != nil {
t.Fatal(err)
}
if mo.Type != MessageOriginTypeUser {
t.Fatal("wrong type")
}
if mo.MessageOriginUser == nil {
t.Fatal("MessageOriginUser is nil")
}
if mo.MessageOriginUser.Date != 123 {
t.Fatal("wrong date")
}
if mo.MessageOriginUser.SenderUser.ID != 123 {
t.Fatal("wrong sender user id")
}
}
func TestUnmarshalMessageOrigin_hidden_user(t *testing.T) {
src := `{"type":"hidden_user","date":123,"sender_user_name":"bar"}`
var mo MessageOrigin
err := json.Unmarshal([]byte(src), &mo)
if err != nil {
t.Fatal(err)
}
if mo.Type != MessageOriginTypeHiddenUser {
t.Fatal("wrong type")
}
if mo.MessageOriginHiddenUser == nil {
t.Fatal("MessageOriginHiddenUser is nil")
}
if mo.MessageOriginHiddenUser.Date != 123 {
t.Fatal("wrong date")
}
if mo.MessageOriginHiddenUser.SenderUserName != "bar" {
t.Fatal("wrong sender user name")
}
}
func TestUnmarshalMessageOrigin_chat(t *testing.T) {
src := `{"type":"chat","date":123,"sender_chat":{"id":123}}`
var mo MessageOrigin
err := json.Unmarshal([]byte(src), &mo)
if err != nil {
t.Fatal(err)
}
if mo.Type != MessageOriginTypeChat {
t.Fatal("wrong type")
}
if mo.MessageOriginChat == nil {
t.Fatal("MessageOriginChat is nil")
}
if mo.MessageOriginChat.Date != 123 {
t.Fatal("wrong date")
}
if mo.MessageOriginChat.SenderChat.ID != 123 {
t.Fatal("wrong chat id")
}
}
func TestUnmarshalMessageOrigin_channel(t *testing.T) {
src := `{"type":"channel","date":123,"chat":{"id":123}}`
var mo MessageOrigin
err := json.Unmarshal([]byte(src), &mo)
if err != nil {
t.Fatal(err)
}
if mo.Type != MessageOriginTypeChannel {
t.Fatal("wrong type")
}
if mo.MessageOriginChannel == nil {
t.Fatal("MessageOriginChannel is nil")
}
if mo.MessageOriginChannel.Date != 123 {
t.Fatal("wrong date")
}
if mo.MessageOriginChannel.Chat.ID != 123 {
t.Fatal("wrong chat id")
}
}