feat: extract groups from message logs
This commit is contained in:
22
internal/isphere/groups_test.go
Normal file
22
internal/isphere/groups_test.go
Normal file
@@ -0,0 +1,22 @@
|
||||
package isphere
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestSearchGroupsFromMessagesMatchesGroupchatJIDs(t *testing.T) {
|
||||
messages := []Message{
|
||||
{ID: "msg-1", ConversationType: "groupchat", SenderID: "project-room@conference.imopenfire1-lanzhou", ReceiverID: "user@imopenfire1-lanzhou"},
|
||||
{ID: "msg-2", ConversationType: "chat", SenderID: "alice@imopenfire1-lanzhou", ReceiverID: "bob@imopenfire1-lanzhou"},
|
||||
{ID: "msg-3", ConversationType: "groupchat", SenderID: "project-room@conference.imopenfire1-lanzhou", ReceiverID: "other@imopenfire1-lanzhou"},
|
||||
}
|
||||
|
||||
got := SearchGroupsFromMessages(messages, SearchGroupsQuery{Query: "project", Limit: 10})
|
||||
want := SearchGroupsResult{Groups: []Group{
|
||||
{GroupID: "project-room@conference.imopenfire1-lanzhou", DisplayName: "project-room@conference.imopenfire1-lanzhou", Source: "local_readonly", Confidence: 0.6, RawRef: "groupchat_jid"},
|
||||
}}
|
||||
if !reflect.DeepEqual(got, want) {
|
||||
t.Fatalf("SearchGroupsFromMessages() = %#v, want %#v", got, want)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user