예제 #1
0
        public void AllowedUsersSuccess()
        {
            // create room.private = 0
            var roomPublic = new ChatRoom()
            {
                Name    = "Room1",
                Private = false
            };

            // create room.private = 1
            var roomPrivate = new ChatRoom()
            {
                Name    = "Room2",
                Private = true
            };

            // add both rooms to repository
            _repository.Add(roomPublic);
            _repository.Add(roomPrivate);

            // create controlList with only public room inside
            var controlList = new List <ChatRoom>()
            {
                roomPublic
            };

            // test to see if public room is returned
            Assert.Equal(controlList, _repository.Rooms.Allowed("").ToList());

            // update controlList with roomPrivate (now holds both rooms)
            controlList.Add(roomPrivate);

            // create new object of ChatRoomChatUserAllowed and add to room.AllowedUsers
            // Set KeyNavigationId to test value string.
            var user1 = new ChatUser()
            {
                Id = "123"
            };

            _repository.Add(user1);

            var allowed = new ChatPrivateRoomUsers();

            allowed.ChatUserKeyNavigation = user1;

            roomPrivate.AllowedUsers.Add(allowed);
            user1.AllowedRooms.Add(allowed);

            Assert.Equal(controlList, _repository.Rooms.Allowed("123").ToList().OrderBy(r => r.Name));

            // Clean up
            _repository.Remove(roomPublic);
            _repository.Remove(roomPrivate);
            _repository.Remove(user1);
            roomPrivate.AllowedUsers.Remove(allowed);
            user1.AllowedRooms.Remove(allowed);

            Console.WriteLine("\tRepositoryExtensionTest.AllowedUsersSuccess: Complete");
        }
예제 #2
0
 public void Remove(ChatPrivateRoomUsers allowed)
 {
     _allowed.Remove(allowed);
 }
예제 #3
0
 public void Add(ChatPrivateRoomUsers allowed)
 {
     _allowed.Add(allowed);
 }
예제 #4
0
 public void Add(ChatPrivateRoomUsers allowed)
 {
     _db.ChatPrivateRoomUsers.Add(allowed);
     _db.SaveChanges();
 }
예제 #5
0
 public void Remove(ChatPrivateRoomUsers allowed)
 {
     _db.ChatPrivateRoomUsers.Remove(allowed);
     _db.SaveChanges();
 }