Ejemplo n.º 1
0
        public void SendNotificationFriendshiprNotExists()
        {
            var notificationToSend = new Notification // user sends only notification and UserRecipientId!
            {                                         // other fields set in function!
                Id              = 0,
                SendingDate     = new DateTime(),
                Text            = "Notification 1",
                UserRecipientId = 2,
                UserRecipient   = null,
                UserSenderId    = 0,
                UserSender      = null
            };

            _uowMock.Setup(uow => uow.Users.FirstOrDefault(x => x.Id == 1, ""))
            .Returns(fakeCurrentUser);

            _uowMock.Setup(uow => uow.Users.FirstOrDefault(x => x.Id == notificationToSend.UserRecipientId, ""))
            .Returns(fakeOtherUser);

            _uowMock.Setup(uow => uow.Friendships.FirstOrDefault(f =>
                                                                 (f.UserSenderId == 1 && f.UserRecipientId == notificationToSend.UserRecipientId && f.StatusCodeID == 'A') ||
                                                                 (f.UserSenderId == notificationToSend.UserRecipientId && f.UserRecipientId == 1 && f.StatusCodeID == 'A'), ""))
            .Returns((Friendship)null);

            Exception ex = Assert.Throws <ValidationException>(delegate { _manager.SendNotification(notificationToSend, 1); });

            Assert.That(ex.Message, Is.EqualTo("Friendship not exist!"));
        }
Ejemplo n.º 2
0
        public void SendNotification()
        {
            var notificationToSend = new Notification // user sends only notification and UserRecipientId!
            {                                         // other fields set in function!
                Id              = 0,
                SendingDate     = new DateTime(),
                Text            = "Notification 1",
                UserRecipientId = 2,
                UserRecipient   = null,
                UserSenderId    = 0,
                UserSender      = null
            };

            _uowMock.Setup(uow => uow.Users.FirstOrDefault(x => x.Id == 1, ""))
            .Returns(fakeCurrentUser);

            _uowMock.Setup(uow => uow.Users.FirstOrDefault(x => x.Id == notificationToSend.UserRecipientId, ""))
            .Returns(fakeOtherUser);

            _uowMock.Setup(uow => uow.Friendships.FirstOrDefault(f =>
                                                                 (f.UserSenderId == 1 && f.UserRecipientId == notificationToSend.UserRecipientId && f.StatusCodeID == 'A') ||
                                                                 (f.UserSenderId == notificationToSend.UserRecipientId && f.UserRecipientId == 1 && f.StatusCodeID == 'A'), ""))
            .Returns(fakeFriendship);

            _uowMock.Setup(uow => uow.Notification.Add(notificationToSend, ""))
            .Returns(notificationToSend);

            _uowMock.Setup(uow => uow.Save()).Callback(() => { notificationToSend.Id = 11; });

            var result = _manager.SendNotification(notificationToSend, 1);

            _uowMock.Verify(uow => uow.Notification.Add(notificationToSend, ""), Times.Once());
            _uowMock.Verify(uow => uow.Save(), Times.Once());

            Assert.AreEqual(11, result.Id);
            Assert.AreEqual(fakeCurrentUser.Id, result.UserSenderId);
            Assert.AreEqual(fakeCurrentUser, result.UserSender);
            Assert.AreEqual(fakeOtherUser, result.UserRecipient);
        }