예제 #1
0
        public void ReceiveMessagesTest()
        {
            IChatManager target = ContainerService.Instance.Resolve<ChatManager>();
            const string userId = "100";
            const string chatRoomId = "100";

            IRepository<User> userRepository = ContainerService.Instance.Resolve<IRepository<User>>();

            var user = new User
                           {
                               Id = Convert.ToInt16(userId),
                               Name = "Kiril",
                               Password = "******",
                               TimeLogIn = DateTime.Now
                           };

            userRepository.Add(user);
            userRepository.SaveAll();

            IRepository<Room> roomRepository = ContainerService.Instance.Resolve<IRepository<Room>>();

            var room = new Room
                           {
                               Id = Convert.ToInt16(chatRoomId),
                               Name = "test"
                           };

            roomRepository.Add(room);
            roomRepository.SaveAll();

            IRepository<Message> messageRepository = ContainerService.Instance.Resolve<IRepository<Message>>();

            Message message = new Message
                              {
                                  Date = DateTime.Now,
                                  Id = messageRepository.FindAll().Count() + 1,
                                  RoomId = 100,
                                  UserId = 100,
                                  Text = "testMessage"
                              };

            messageRepository.Add(message);
            messageRepository.SaveAll();

            string str = target.ReceiveMessages(userId, chatRoomId);

            var s = str.Split(new[]{"Date"},StringSplitOptions.None);

            messageRepository.Delete(message);
            messageRepository.SaveAll();

            userRepository.Delete(user);
            userRepository.SaveAll();

            roomRepository.Delete(room);
            roomRepository.SaveAll();

            Assert.AreEqual(1, s.Length);
        }
예제 #2
0
        public int AddAnonimUser()
        {
            var userRepository = ContainerService.Instance.Resolve<IRepository<User>>();

            User user = new User
                            {
                                Id = userRepository.FindAll().Count() + 1,
                                Name = "anonim",
                                Password = "******",
                                RoomId = 0,
                                TimeLogIn = DateTime.Now
                            };
            userRepository.Add(user);
            userRepository.SaveAll();

            return user.Id;
        }
예제 #3
0
        public void SendMessageTest()
        {
            IRepository<User> userRepository = ContainerService.Instance.Resolve<IRepository<User>>();
            User user = new User
                            {
                                Id = 100,
                                Name = "Kiril",
                                Password = "******",
                                TimeLogIn = DateTime.Now
                            };
            userRepository.Add(user);
            userRepository.SaveAll();

            IRepository<Room> roomRepository = ContainerService.Instance.Resolve<IRepository<Room>>();

            Room room = new Room
                            {
                                Id = 100,
                                Name = "test"
                            };

            roomRepository.Add(room);
            roomRepository.SaveAll();

            var target = new ChatManager();
            const string text = "Hello";
            string userId = "100";
            string chatRoomId = "100";

            target.SendMessage(text, userId, chatRoomId);

            IRepository<Message> messageRepository = ContainerService.Instance.Resolve<IRepository<Message>>();

            var actual = messageRepository.FindAll(
                m => m.Text == text &&
                    m.UserId == Convert.ToInt16(userId) &&
                    m.RoomId == Convert.ToInt16(chatRoomId)).Count();

            var messageId = messageRepository.FindAll().Count();
            var message = messageRepository.FindOne(m => m.Id == messageId);
            messageRepository.Delete(message);

            userRepository.Delete(user);
            userRepository.SaveAll();

            roomRepository.Delete(room);
            roomRepository.SaveAll();

            Assert.AreEqual(1, actual);
        }
예제 #4
0
		private void detach_Users(User entity)
		{
			this.SendPropertyChanging();
			entity.Room = null;
		}
예제 #5
0
		private void attach_Users(User entity)
		{
			this.SendPropertyChanging();
			entity.Room = this;
		}
예제 #6
0
	partial void DeleteUser(User instance);
예제 #7
0
	partial void UpdateUser(User instance);
예제 #8
0
	partial void InsertUser(User instance);