Files
mautrix-telegram/pkg/gotd/telegram/peers/search_test.go
T
2025-06-27 20:03:37 -07:00

46 lines
948 B
Go

package peers
import (
"context"
"testing"
"github.com/stretchr/testify/require"
"go.mau.fi/mautrix-telegram/pkg/gotd/tg"
)
func TestManager_Search(t *testing.T) {
a := require.New(t)
ctx := context.Background()
mock, m := testManager(t)
mock.ExpectCall(&tg.ContactsSearchRequest{
Q: "q",
Limit: 10,
}).ThenRPCErr(getTestError())
_, err := m.Search(ctx, "q")
a.Error(err)
mock.ExpectCall(&tg.ContactsSearchRequest{
Q: "q",
Limit: 10,
}).ThenResult(&tg.ContactsFound{
MyResults: []tg.PeerClass{&tg.PeerUser{UserID: getTestUser().GetID()}},
Results: []tg.PeerClass{&tg.PeerChat{ChatID: getTestChat().GetID()}},
Chats: []tg.ChatClass{
getTestChat(),
},
Users: []tg.UserClass{
getTestUser(),
},
})
r, err := m.Search(ctx, "q")
a.NoError(err)
a.Len(r.MyResults, 1)
a.Equal(getTestUser().GetID(), r.MyResults[0].ID())
a.Len(r.Results, 1)
a.Equal(getTestChat().GetID(), r.Results[0].ID())
}