예제 #1
0
        internal static void FillMessages(ChatAreaViewModel vm, int count, int usersCount)
        {
            var mess = GenerateMessageList(count, usersCount);

            for (int i = 0; i < mess.Count; i++)
            {
                vm.Messages.Add(mess[i]);
            }
        }
예제 #2
0
        [Test] public void Init_SubscribedToVMGotoMessage()
        {
            var vm = new ChatAreaViewModel(
                _messageLoaderMock.Object,
                _receiverHub,
                _vmMessengerMock.Object);

            _vmMessengerMock.Verify(m =>
                                    m.Register <GoToMessageInnerMessage>(vm, It.IsAny <Action <GoToMessageInnerMessage> >(), false),
                                    Times.Once);
        }
예제 #3
0
        [Test] public void CleanUp_MessagesIsEmpty()
        {
            var vm = new ChatAreaViewModel(
                _messageLoaderMock.Object,
                _receiverHub,
                _vmMessengerMock.Object);

            TestsHelper.FillMessages(vm, 3, 2);

            vm.Cleanup();

            Assert.IsEmpty(vm.Messages);
        }
예제 #4
0
        [Test] public void CleanUp_UnsubscribedFromVMGotoMessage()
        {
            var vm = new ChatAreaViewModel(
                _messageLoaderMock.Object,
                _receiverHub,
                _vmMessengerMock.Object);

            vm.Cleanup();

            _vmMessengerMock.Verify(m =>
                                    m.Unregister <GoToMessageInnerMessage>(vm),
                                    Times.Once);
        }
예제 #5
0
        [Test] public void Init_SubscribedToMessagesReceiver()
        {
            var receiverHubMock = new Mock <IReceiverHub>();

            var vm = new ChatAreaViewModel(
                _messageLoaderMock.Object,
                receiverHubMock.Object,
                _vmMessengerMock.Object);

            receiverHubMock.Verify(m =>
                                   m.SubscribeMessageReceived(vm, It.IsAny <Action <MessageObservable> >()),
                                   Times.Once);
        }
예제 #6
0
        [Test] public void CleanUp_UnsubscribedFromMessagesReceiver()
        {
            var receiverHubMock = new Mock <IReceiverHub>();
            var vm = new ChatAreaViewModel(
                _messageLoaderMock.Object,
                receiverHubMock.Object,
                _vmMessengerMock.Object);

            vm.Cleanup();

            receiverHubMock.Verify(m =>
                                   m.UnsubscribeMessageReceived(vm),
                                   Times.Once);
        }
예제 #7
0
        [Test] public void AddMessNotNative_ScrollUp_UnreadMessEncr()
        {
            var vm = new ChatAreaViewModel(
                _messageLoaderMock.Object,
                _receiverHub,
                _vmMessengerMock.Object);

            TestsHelper.FillMessages(vm, 3, 2);
            vm.LastVisibleMessageIndex = 1;

            vm.Messages.Add(TestsHelper.GenerateMessage(3, 2, false));

            Assert.AreEqual(1, vm.LastVisibleMessageIndex);
            Assert.AreEqual(1, vm.NewMessagesCount);
        }