mirror of
https://github.com/shazow/ssh-chat.git
synced 2025-06-05 09:53:38 +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)
|
members := ch.members.ListPrefix(prefix)
|
||||||
names := make([]string, len(members))
|
names := make([]string, len(members))
|
||||||
for i, u := range members {
|
for i, u := range members {
|
||||||
names[i] = u.(*User).Name()
|
names[i] = u.(*Member).User.Name()
|
||||||
}
|
}
|
||||||
return names
|
return names
|
||||||
}
|
}
|
||||||
|
@ -56,3 +56,29 @@ func TestChannelJoin(t *testing.T) {
|
|||||||
t.Errorf("Got: `%s`; Expected: `%s`", actual, expected)
|
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