7a04f298d2
- update to latest telegram layer - remove some references to fields in tg.Entities that don't exist in the schema - originally added here: https://github.com/beeper/td/commit/820929062a2ba0104397bc01235ab58a9cff780e - referenced here - https://github.com/mautrix/telegramgo/commit/124f0967ed195b5a380c9bd02e170ada9710dde3 - https://github.com/mautrix/telegramgo/commit/4205047aab2e0639217148b5d125bfaab668bd8e
66 lines
1.3 KiB
Go
66 lines
1.3 KiB
Go
package constant
|
|
|
|
import (
|
|
"strconv"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestIsID(t *testing.T) {
|
|
tests := []struct {
|
|
id TDLibPeerID
|
|
user bool
|
|
chat bool
|
|
channel bool
|
|
}{
|
|
{id: 309570373, user: true},
|
|
{id: 140267078, user: true},
|
|
{id: -365219918, chat: true},
|
|
{id: -1001228418968, channel: true},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(strconv.FormatInt(int64(tt.id), 10), func(t *testing.T) {
|
|
a := require.New(t)
|
|
|
|
a.Equal(tt.user, tt.id.IsUser())
|
|
a.Equal(tt.chat, tt.id.IsChat())
|
|
a.Equal(tt.channel, tt.id.IsChannel())
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestTDLibPeerID_ToPlain(t *testing.T) {
|
|
tests := []struct {
|
|
id TDLibPeerID
|
|
wantR int64
|
|
}{
|
|
{309570373, 309570373},
|
|
{140267078, 140267078},
|
|
{-365219918, 365219918},
|
|
{-1001228418968, 1228418968},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(strconv.FormatInt(int64(tt.id), 10), func(t *testing.T) {
|
|
a := require.New(t)
|
|
plain := tt.id.ToPlain()
|
|
a.Equal(tt.wantR, plain)
|
|
|
|
switch {
|
|
case tt.id.IsUser():
|
|
var tdlibID TDLibPeerID
|
|
tdlibID.User(plain)
|
|
a.Equal(tt.id, tdlibID)
|
|
case tt.id.IsChat():
|
|
var tdlibID TDLibPeerID
|
|
tdlibID.Chat(plain)
|
|
a.Equal(tt.id, tdlibID)
|
|
case tt.id.IsChannel():
|
|
var tdlibID TDLibPeerID
|
|
tdlibID.Channel(plain)
|
|
a.Equal(tt.id, tdlibID)
|
|
}
|
|
})
|
|
}
|
|
}
|