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