]> git.giacomolli.uk - onechat/blob - whatsapp_groups_test.go
Log image and message sends
[onechat] / whatsapp_groups_test.go
1 package main
2
3 import (
4 "context"
5 "errors"
6 "strings"
7 "testing"
8
9 "github.com/stretchr/testify/require"
10 "go.mau.fi/whatsmeow/types"
11 )
12
13 func TestWhatsAppGroupReadFailureWarnsWithoutLosingNames(t *testing.T) {
14 var logs strings.Builder
15
16 groups := newWhatsAppGroups(daemonTestLogger(&logs))
17 groups.set("group", "Example group")
18
19 client := &WhatsAppGroupsFailure{WhatsAppClient: &WhatsAppFake{}}
20 link := WhatsAppLink{
21 client: client,
22 own: []string{whatsappTestNumber},
23 }
24
25 require.False(t, groups.read(t.Context(), link))
26 require.Equal(t, "<4>group list failed: no route for OWN\n", logs.String())
27 require.Equal(t, "Example group", groups.name(t.Context(), link, "group"))
28 }
29
30 type WhatsAppGroupsFailure struct {
31 WhatsAppClient
32 }
33
34 func (c *WhatsAppGroupsFailure) GetJoinedGroups(_ context.Context) ([]*types.GroupInfo, error) {
35 return nil, errors.New("no route for " + whatsappTestNumber)
36 }