- for _, tc := range testCases {
- t.Run(tc.name, func(t *testing.T) {
- whatsapp, fake := whatsappStartTestLinked(t)
- fake.groups = []*types.GroupInfo{
- {
- JID: whatsappTestFamily,
- GroupName: types.GroupName{
- Name: "Family",
- },
- },
- }
-
- server := newModelFake(t)
- socket, memory := daemonStartTestWithWhatsApp(t, server, nil, whatsapp)
- client := terminalStartTestClient(t, socket)
- client.WaitFor(t, "[connected to OneChat]")
- whatsappTestConnect(t, fake)
-
- event := whatsappTestMessage(whatsappTestFamily, whatsappTestBruno, "m1", "Who brings the cake?", time.Date(2026, 1, 1, 12, 0, 0, 0, time.UTC))
- event.Info.PushName = "Bruno Lima"
- tc.message(event)
- require.True(t, fake.Emit(event))
-
- text := "[WhatsApp] Family, group 120363000000000001@g.us, Thursday 2026-01-01\n" + tc.line
- if tc.turn {
- text += "\n" + whatsappBatchEmptyReply
- client.WaitFor(t, "[done]")
- require.Equal(t, 1, server.Calls())
- } else {
- client.WaitFor(t, text)
- time.Sleep(100 * time.Millisecond)
- require.Zero(t, server.Calls())
- }