move gotd fork into repo. (#111)

- 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
This commit is contained in:
Adam Van Ymeren
2025-06-27 20:03:37 -07:00
committed by GitHub
parent 0952df0244
commit 7a04f298d2
19264 changed files with 1539697 additions and 84 deletions
@@ -0,0 +1,71 @@
package entity
import (
"testing"
"github.com/stretchr/testify/require"
"go.mau.fi/mautrix-telegram/pkg/gotd/tg"
)
func TestBuilder_TextRange(t *testing.T) {
var (
a = require.New(t)
b Builder
)
_, _ = b.WriteString("abc")
a.Equal("abc"[1:2], b.TextRange(1, 2))
a.Equal("abc"[0:0], b.TextRange(0, 0))
panicRanges := [][2]int{
{1, 0},
{-1, 0},
{0, -1},
}
for _, r := range panicRanges {
a.Panics(func() {
b.TextRange(r[0], r[1])
})
}
}
func TestBuilder_LastEntity(t *testing.T) {
var (
a = require.New(t)
b Builder
)
e, ok := b.LastEntity()
a.False(ok)
a.Nil(e)
b.Underline("abc")
e, ok = b.LastEntity()
a.True(ok)
a.Equal(&tg.MessageEntityUnderline{
Offset: 0,
Length: 3,
}, e)
}
func TestBuilder_GrowText(t *testing.T) {
var (
a = require.New(t)
b Builder
)
b.GrowText(100)
a.LessOrEqual(100, b.message.Cap())
}
func TestBuilder_GrowEntities(t *testing.T) {
var (
a = require.New(t)
b Builder
)
b.GrowEntities(100)
a.Equal(100, cap(b.entities))
a.Panics(func() {
b.GrowEntities(-1)
})
}