本文整理汇总了C#中JabbR.Services.ChatService.AllowUser方法的典型用法代码示例。如果您正苦于以下问题:C# ChatService.AllowUser方法的具体用法?C# ChatService.AllowUser怎么用?C# ChatService.AllowUser使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JabbR.Services.ChatService
的用法示例。
在下文中一共展示了ChatService.AllowUser方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ThrowsIfUserIsNotOwner
public void ThrowsIfUserIsNotOwner()
{
var repository = new InMemoryRepository();
var user = new ChatUser
{
Name = "foo"
};
repository.Add(user);
var room = new ChatRoom
{
Name = "Room",
Private = true
};
room.Users.Add(user);
user.Rooms.Add(room);
var service = new ChatService(repository, new Mock<ICryptoService>().Object);
Assert.Throws<InvalidOperationException>(() => service.AllowUser(user, user, room));
}
示例2: AllowsUserIntoRoom
public void AllowsUserIntoRoom()
{
var repository = new InMemoryRepository();
var user = new ChatUser
{
Name = "foo"
};
var user2 = new ChatUser
{
Name = "foo2"
};
repository.Add(user);
repository.Add(user2);
var room = new ChatRoom
{
Name = "Room",
Private = true
};
room.Owners.Add(user);
user.OwnedRooms.Add(room);
user.Rooms.Add(room);
room.Users.Add(user);
var service = new ChatService(repository, new Mock<ICryptoService>().Object);
service.AllowUser(user, user2, room);
Assert.True(room.AllowedUsers.Contains(user2));
Assert.True(user2.AllowedRooms.Contains(room));
}
示例3: ThrowsIfUserIsAlreadyAllowed
public void ThrowsIfUserIsAlreadyAllowed()
{
var repository = new InMemoryRepository();
var user = new ChatUser
{
Name = "foo"
};
var user2 = new ChatUser
{
Name = "foo2"
};
repository.Add(user);
repository.Add(user2);
var room = new ChatRoom
{
Name = "Room",
Private = true
};
room.Users.Add(user);
room.AllowedUsers.Add(user2);
room.Owners.Add(user);
user.OwnedRooms.Add(room);
user.Rooms.Add(room);
user2.AllowedRooms.Add(room);
var service = new ChatService(new Mock<ICache>().Object, repository);
Assert.Throws<HubException>(() => service.AllowUser(user, user2, room));
}
示例4: AdminCanAllowUserIntoRoom
public void AdminCanAllowUserIntoRoom()
{
var repository = new InMemoryRepository();
var admin = new ChatUser
{
Name = "foo",
IsAdmin = true
};
repository.Add(admin);
var room = new ChatRoom
{
Name = "Room",
Private = true
};
room.Users.Add(admin);
admin.Rooms.Add(room);
var service = new ChatService(new Mock<ICache>().Object, repository);
service.AllowUser(admin, admin, room);
Assert.True(room.AllowedUsers.Contains(admin));
Assert.True(admin.AllowedRooms.Contains(room));
}
示例5: ThrowsIfRoomNotPrivate
public void ThrowsIfRoomNotPrivate()
{
var repository = new InMemoryRepository();
var user = new ChatUser
{
Name = "foo"
};
var user2 = new ChatUser
{
Name = "foo2"
};
repository.Add(user);
repository.Add(user2);
var room = new ChatRoom
{
Name = "Room",
};
room.Users.Add(user);
user.Rooms.Add(room);
room.Owners.Add(user);
user.OwnedRooms.Add(room);
var service = new ChatService(new Mock<ICache>().Object, repository, new Mock<ICryptoService>().Object);
Assert.Throws<InvalidOperationException>(() => service.AllowUser(user, user2, room));
}
示例6: ThrowsIfUserIsNotOwner
public void ThrowsIfUserIsNotOwner()
{
var repository = new InMemoryRepository();
var user = new ChatUser
{
Name = "foo"
};
repository.Add(user);
var room = new ChatRoom
{
Name = "Room",
Private = true
};
room.Users.Add(user);
user.Rooms.Add(room);
var service = new ChatService(new Mock<ICache>().Object, new Mock<IRecentMessageCache>().Object, repository);
Assert.Throws<HubException>(() => service.AllowUser(user, user, room));
}