99 lines
2.0 KiB
Go
99 lines
2.0 KiB
Go
// Copyright 2014 Claudemiro Alves Feitosa Neto. All rights reserved.
|
|
// Use of this source code is governed by a MIT-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package main
|
|
|
|
import "testing"
|
|
|
|
func TestIsOccupied(t *testing.T) {
|
|
c := NewChannel("ID")
|
|
|
|
if c.IsOccupied() {
|
|
t.Error("Channels must be empty")
|
|
}
|
|
|
|
c.Subscriptions["ID"] = NewSubscription(NewConnection("ID", nil), "")
|
|
|
|
if !c.IsOccupied() {
|
|
t.Error("Channels must be empty")
|
|
}
|
|
}
|
|
|
|
func TestIsPrivate(t *testing.T) {
|
|
c := NewChannel("private-channel")
|
|
|
|
if !c.IsPrivate() {
|
|
t.Error("The Channel must be private")
|
|
}
|
|
}
|
|
|
|
func TestIsPresence(t *testing.T) {
|
|
c := NewChannel("presence-channel")
|
|
|
|
if !c.IsPresence() {
|
|
t.Error("The Channel must be presence")
|
|
}
|
|
}
|
|
|
|
func TestIsPublic(t *testing.T) {
|
|
c := NewChannel("channel")
|
|
|
|
if !c.IsPublic() {
|
|
t.Error("The Channel must be public")
|
|
}
|
|
}
|
|
|
|
func TestIsPrivateOrPresence(t *testing.T) {
|
|
c := NewChannel("private-channel")
|
|
|
|
if !c.IsPresenceOrPrivate() {
|
|
t.Error("The Channel must be private or presence")
|
|
}
|
|
|
|
c = NewChannel("presence-channel")
|
|
|
|
if !c.IsPresenceOrPrivate() {
|
|
t.Error("The Channel must be private or presence")
|
|
}
|
|
}
|
|
|
|
func TestTotalSubscriptions(t *testing.T) {
|
|
c := NewChannel("ID")
|
|
|
|
if c.TotalSubscriptions() != len(c.Subscriptions) {
|
|
t.Error("TotalSubscriptions must be equal to len of total subscriptions")
|
|
}
|
|
}
|
|
|
|
func TestTotalUsers(t *testing.T) {
|
|
c := NewChannel("ID")
|
|
|
|
c.Subscriptions["1"] = NewSubscription(NewConnection("ID", nil), "")
|
|
c.Subscriptions["2"] = NewSubscription(NewConnection("ID", nil), "")
|
|
|
|
if c.TotalSubscriptions() != len(c.Subscriptions) {
|
|
t.Error("TotalSubscriptions must be equal to len of total subscriptions")
|
|
}
|
|
|
|
if c.TotalUsers() != 1 {
|
|
t.Error("TotalUsers must be equal to 1")
|
|
}
|
|
|
|
}
|
|
|
|
func TestIsSubscribed(t *testing.T) {
|
|
c := NewChannel("ID")
|
|
conn := NewConnection("ID", nil)
|
|
|
|
if c.IsSubscribed(conn) {
|
|
t.Error("Must not be subscribed")
|
|
}
|
|
|
|
c.Subscriptions["ID"] = NewSubscription(conn, "")
|
|
|
|
if !c.IsSubscribed(conn) {
|
|
t.Error("Must be subscribed")
|
|
}
|
|
}
|