]>
Commit | Line | Data |
---|---|---|
d9bc63a1 JH |
1 | package hotline |
2 | ||
3 | import ( | |
4 | "github.com/stretchr/testify/assert" | |
5 | "testing" | |
6 | ) | |
7 | ||
8 | func TestMemChatManager(t *testing.T) { | |
9 | cc1 := &ClientConn{ID: [2]byte{1}} | |
10 | cc2 := &ClientConn{ID: [2]byte{2}} | |
11 | ||
12 | cm := NewMemChatManager() | |
13 | ||
14 | // Create a new chat with cc1 as initial member. | |
15 | randChatID := cm.New(cc1) | |
16 | assert.Equalf(t, []*ClientConn{cc1}, cm.Members(randChatID), "Initial ChatMembers") | |
17 | ||
18 | // Second client joins. | |
19 | cm.Join(randChatID, cc2) | |
20 | assert.Equalf(t, []*ClientConn{cc1, cc2}, cm.Members(randChatID), "ChatMembers") | |
21 | ||
22 | // Initial subject is blank. | |
23 | assert.Equalf(t, "", cm.GetSubject(randChatID), "ChatMembers") | |
24 | ||
25 | // Update subject. | |
26 | cm.SetSubject(randChatID, "test") | |
27 | assert.Equalf(t, "test", cm.GetSubject(randChatID), "ChatMembers") | |
28 | ||
29 | // Second client leaves. | |
30 | cm.Leave(randChatID, cc2.ID) | |
31 | assert.Equalf(t, []*ClientConn{cc1}, cm.Members(randChatID), "ChatMembers") | |
32 | ||
33 | // | |
34 | //type fields struct { | |
35 | // chats map[ChatID]*PrivateChat | |
36 | //} | |
37 | //type args struct { | |
38 | // cc *ClientConn | |
39 | //} | |
40 | //tests := []struct { | |
41 | // name string | |
42 | // fields fields | |
43 | // args args | |
44 | // want ChatID | |
45 | //}{ | |
46 | // { | |
47 | // name: "creates new chat", | |
48 | // fields: fields{ | |
49 | // chats: make(map[ChatID]*PrivateChat), | |
50 | // }, | |
51 | // args: args{ | |
52 | // cc: &ClientConn{ID: [2]byte{1}}, | |
53 | // }, | |
54 | // //want: , | |
55 | // }, | |
56 | //} | |
57 | //for _, tt := range tests { | |
58 | // t.Run(tt.name, func(t *testing.T) { | |
59 | // cm := &MemChatManager{ | |
60 | // chats: tt.fields.chats, | |
61 | // mu: sync.Mutex{}, | |
62 | // } | |
63 | // | |
64 | // assert.Equalf(t, tt.want, cm.New(tt.args.cc), "New(%v)", tt.args.cc) | |
65 | // }) | |
66 | //} | |
67 | } |