mirror of
https://github.com/shazow/ssh-chat.git
synced 2025-04-14 16:17:17 +03:00
Merge pull request #97 from NickPresta/fix-names-command
Fixing /names from panic
This commit is contained in:
commit
362d0fdffd
@ -168,7 +168,7 @@ func (ch *Channel) NamesPrefix(prefix string) []string {
|
||||
members := ch.members.ListPrefix(prefix)
|
||||
names := make([]string, len(members))
|
||||
for i, u := range members {
|
||||
names[i] = u.(*User).Name()
|
||||
names[i] = u.(*Member).User.Name()
|
||||
}
|
||||
return names
|
||||
}
|
||||
|
@ -56,3 +56,29 @@ func TestChannelJoin(t *testing.T) {
|
||||
t.Errorf("Got: `%s`; Expected: `%s`", actual, expected)
|
||||
}
|
||||
}
|
||||
|
||||
func TestChannelNames(t *testing.T) {
|
||||
var expected, actual []byte
|
||||
|
||||
s := &MockScreen{}
|
||||
u := NewUser("foo")
|
||||
|
||||
ch := NewChannel()
|
||||
go ch.Serve()
|
||||
defer ch.Close()
|
||||
|
||||
err := ch.Join(u)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
<-ch.broadcast
|
||||
|
||||
ch.Send(ParseInput("/names", u))
|
||||
u.ConsumeOne(s)
|
||||
expected = []byte("-> 1 connected: foo" + Newline)
|
||||
s.Read(&actual)
|
||||
if !reflect.DeepEqual(actual, expected) {
|
||||
t.Errorf("Got: `%s`; Expected: `%s`", actual, expected)
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user