Пример #1
0
        // Destroy Message
        public string GetDestroyMessageQuery(IMessageDTO messageDTO)
        {
            if (!_messageQueryValidator.CanMessageDTOBeDestroyed(messageDTO))
            {
                return(null);
            }

            return(GetDestroyMessageQuery(messageDTO.Id));
        }
Пример #2
0
 public Message(
     IUserFactory userFactory,
     IMessageController messageController,
     IMessageDTO messageDTO)
 {
     _userFactory       = userFactory;
     _messageController = messageController;
     _messageDTO        = messageDTO;
 }
        public bool CanMessageDTOBeDestroyed(IMessageDTO messageDTO)
        {
            bool isMessageInValidStateToBeDestroyed = messageDTO != null &&
                                                      messageDTO.Id != TweetinviSettings.DEFAULT_ID &&
                                                      messageDTO.IsMessagePublished &&
                                                      !messageDTO.IsMessageDestroyed;

            return isMessageInValidStateToBeDestroyed;
        }
        public bool CanMessageDTOBeDestroyed(IMessageDTO messageDTO)
        {
            bool isMessageInValidStateToBeDestroyed = messageDTO != null &&
                                                      _userQueryValidator.IsUserIdValid(messageDTO.Id) &&
                                                      messageDTO.IsMessagePublished &&
                                                      !messageDTO.IsMessageDestroyed;

            return(isMessageInValidStateToBeDestroyed);
        }
Пример #5
0
        public bool CanMessageDTOBeDestroyed(IMessageDTO messageDTO)
        {
            bool isMessageInValidStateToBeDestroyed = messageDTO != null &&
                                                      messageDTO.Id != TweetinviSettings.DEFAULT_ID &&
                                                      messageDTO.IsMessagePublished &&
                                                      !messageDTO.IsMessageDestroyed;

            return(isMessageInValidStateToBeDestroyed);
        }
Пример #6
0
        public bool DestroyMessage(IMessageDTO messageDTO)
        {
            if (messageDTO == null)
            {
                throw new ArgumentException("Message cannot be null");
            }

            messageDTO.IsMessageDestroyed = _messageQueryExecutor.DestroyMessage(messageDTO);
            return(messageDTO.IsMessageDestroyed);
        }
Пример #7
0
        // Generate Message from DTO
        public IMessage GenerateMessageFromMessageDTO(IMessageDTO messageDTO)
        {
            if (messageDTO == null)
            {
                return null;
            }

            var messageParameter = _messageUnityFactory.GenerateParameterOverrideWrapper("messageDTO", messageDTO);
            return _messageUnityFactory.Create(messageParameter);
        }
Пример #8
0
        public async Task AddAsync(IMessageDTO dto)
        {
            var user = await _userManager.FindByNameAsync(_httpContext.User.Identity.Name);

            var message = Mapper.Map <Message>(dto);

            message.UserId = user.Id;

            _messageRepository.Add(message);
        }
Пример #9
0
 public Message(
     IUserFactory userFactory,
     IMessageController messageController,
     IMessageDTO messageDTO,
     ITaskFactory taskFactory)
 {
     _userFactory = userFactory;
     _messageController = messageController;
     _messageDTO = messageDTO;
     _taskFactory = taskFactory;
 }
Пример #10
0
        public MessagePublishParameters(IMessageDTO message)
        {
            if (message == null)
            {
                throw new ArgumentNullException("Message cannot be null.");
            }

            Initialize(message.Text, message.Recipient);

            Message = message;
        }
        public PublishMessageParameters(IMessageDTO message)
        {
            if (message == null)
            {
                throw new ArgumentNullException("Message cannot be null.");
            }

            Initialize(message.Text, message.Recipient);

            Message = message;
        }
Пример #12
0
        // Generate Message from DTO
        public IMessage GenerateMessageFromMessageDTO(IMessageDTO messageDTO)
        {
            if (messageDTO == null)
            {
                return(null);
            }

            var messageParameter = _messageUnityFactory.GenerateParameterOverrideWrapper("messageDTO", messageDTO);

            return(_messageUnityFactory.Create(messageParameter));
        }
Пример #13
0
 public Message(
     IUserFactory userFactory,
     IMessageController messageController,
     IMessageDTO messageDTO,
     ITaskFactory taskFactory)
 {
     _userFactory       = userFactory;
     _messageController = messageController;
     _messageDTO        = messageDTO;
     _taskFactory       = taskFactory;
 }
Пример #14
0
        // Publish
        public bool Publish()
        {
            var publishedMessage = _messageController.PublishMessage(_messageDTO);

            if (publishedMessage == null)
            {
                return(false);
            }

            _messageDTO = publishedMessage.MessageDTO;
            return(true);
        }
Пример #15
0
        public void ThrowIfMessageCannotBeDestroyed(IMessageDTO message)
        {
            if (message == null)
            {
                throw new ArgumentNullException("Message parameters cannot be null.");
            }

            if (!message.IsMessagePublished)
            {
                throw new ArgumentException("Message has not yet been published.");
            }

            if (message.IsMessageDestroyed)
            {
                throw new ArgumentException("Message already destroyed.");
            }
        }
        private void ArrangeMessageDTORecipient(
            IMessageDTO messageDTO,
            bool isRecipientValid,
            bool isRecipientIdValid,
            bool isRecipientScreenNameValid)
        {
            var recipient           = A.Fake <IUserDTO>();
            var recipientId         = TestHelper.GenerateRandomLong();
            var recipientScreenName = TestHelper.GenerateString();

            messageDTO.CallsTo(x => x.Recipient).Returns(recipient);
            messageDTO.CallsTo(x => x.RecipientId).Returns(recipientId);
            messageDTO.CallsTo(x => x.RecipientScreenName).Returns(recipientScreenName);

            _fakeUserQueryValidator.CallsTo(x => x.CanUserBeIdentified(recipient)).Returns(isRecipientValid);
            _fakeUserQueryValidator.CallsTo(x => x.IsUserIdValid(recipientId)).Returns(isRecipientIdValid);
            _fakeUserQueryValidator.CallsTo(x => x.IsScreenNameValid(recipientScreenName)).Returns(isRecipientScreenNameValid);
        }
        // Publish Message
        public string GetPublishMessageQuery(IMessageDTO messageDTO)
        {
            if (!_messageQueryValidator.CanMessageDTOBePublished(messageDTO))
            {
                return(null);
            }

            if (_userQueryValidator.CanUserBeIdentified(messageDTO.Recipient))
            {
                return(GetPublishMessageQuery(messageDTO.Text, messageDTO.Recipient));
            }

            if (_userQueryValidator.IsUserIdValid(messageDTO.RecipientId))
            {
                return(GetPublishMessageQuery(messageDTO.Text, messageDTO.RecipientId));
            }

            return(GetPublishMessageQuery(messageDTO.Text, messageDTO.RecipientScreenName));
        }
        public bool CanMessageDTOBePublished(IMessageDTO messageDTO)
        {
            bool isMessageInValidState = messageDTO != null &&
                                         !messageDTO.IsMessagePublished &&
                                         !messageDTO.IsMessageDestroyed;

            if (!isMessageInValidState)
            {
                return(false);
            }

            bool isRecipientValid = _userQueryValidator.CanUserBeIdentified(messageDTO.Recipient) ||
                                    _userQueryValidator.IsUserIdValid(messageDTO.RecipientId) ||
                                    _userQueryValidator.IsScreenNameValid(messageDTO.RecipientScreenName);

            bool messageTextIsValid = IsMessageTextValid(messageDTO.Text);

            return(isRecipientValid && messageTextIsValid);
        }
        public bool CanMessageDTOBePublished(IMessageDTO messageDTO)
        {
            bool isMessageInValidState = messageDTO != null &&
                                         !messageDTO.IsMessagePublished &&
                                         !messageDTO.IsMessageDestroyed;

            if (!isMessageInValidState)
            {
                return false;
            }

            bool isRecipientValid = _userQueryValidator.CanUserBeIdentified(messageDTO.Recipient) ||
                                    _userQueryValidator.IsUserIdValid(messageDTO.RecipientId) ||
                                    _userQueryValidator.IsScreenNameValid(messageDTO.RecipientScreenName);

            bool messageTextIsValid = IsMessageTextValid(messageDTO.Text);

            return isRecipientValid && messageTextIsValid;
        }
Пример #20
0
 public static string DestroyMessage(IMessageDTO messageDTO)
 {
     return MessageJsonController.DestroyMessage(messageDTO);
 }
Пример #21
0
 public static async Task <bool> DestroyMessage(IMessageDTO messageDTO)
 {
     return(await Sync.ExecuteTaskAsync(() => Message.DestroyMessage(messageDTO)));
 }
        private void ArrangeMessageDTORecipient(
            IMessageDTO messageDTO,
            bool isRecipientValid,
            bool isRecipientIdValid,
            bool isRecipientScreenNameValid)
        {
            var recipient = A.Fake<IUserDTO>();
            var recipientId = TestHelper.GenerateRandomLong();
            var recipientScreenName = TestHelper.GenerateString();

            messageDTO.CallsTo(x => x.Recipient).Returns(recipient);
            messageDTO.CallsTo(x => x.RecipientId).Returns(recipientId);
            messageDTO.CallsTo(x => x.RecipientScreenName).Returns(recipientScreenName);

            _fakeUserQueryValidator.CallsTo(x => x.CanUserBeIdentified(recipient)).Returns(isRecipientValid);
            _fakeUserQueryValidator.CallsTo(x => x.IsUserIdValid(recipientId)).Returns(isRecipientIdValid);
            _fakeUserQueryValidator.CallsTo(x => x.IsScreenNameValid(recipientScreenName)).Returns(isRecipientScreenNameValid);
        }
Пример #23
0
        // Destroy Message
        public bool DestroyMessage(IMessageDTO messageDTO)
        {
            string query = _messageQueryGenerator.GetDestroyMessageQuery(messageDTO);

            return(_twitterAccessor.TryExecutePOSTQuery(query));
        }
Пример #24
0
 public IMessage PublishMessage(IMessageDTO messageDTO)
 {
     return PublishMessage(new PublishMessageParameters(messageDTO));
 }
Пример #25
0
 public IMessage PublishMessage(IMessageDTO messageDTO)
 {
     return(PublishMessage(new PublishMessageParameters(messageDTO)));
 }
 private void ArrangeQueryExecutorPublishMessageWithTextAndUserId(string text, long recipientId, IMessageDTO result)
 {
     _fakeMessageQueryExecutor
         .CallsTo(x => x.PublishMessage(text, recipientId))
         .Returns(result);
 }
 private void ArrangeQueryExecutorPublishMessageWithMessageDTO(IMessageDTO sourceMessage, IMessageDTO result)
 {
     _fakeMessageQueryExecutor
         .CallsTo(x => x.PublishMessage(sourceMessage))
         .Returns(result);
 }
Пример #28
0
 public IMessage PublishMessage(IMessageDTO messageDTO)
 {
     var publishedMessageDTO = _messageQueryExecutor.PublishMessage(messageDTO);
     return _messageFactory.GenerateMessageFromMessageDTO(publishedMessageDTO);
 }
 public string PublishMessage(IMessageDTO message)
 {
     return(PublishMessage(new MessagePublishParameters(message)));
 }
Пример #30
0
 public static IMessage PublishMessage(IMessageDTO messageDTO)
 {
     return(MessageController.PublishMessage(messageDTO));
 }
Пример #31
0
 private void ArrangeQueryGeneratorDestroyMessage(IMessageDTO messageDTO, string query)
 {
     _fakeMessageQueryGenerator
     .CallsTo(x => x.GetDestroyMessageQuery(messageDTO))
     .Returns(query);
 }
Пример #32
0
 // Destroy Message
 public string GetDestroyMessageQuery(IMessageDTO messageDTO)
 {
     _messageQueryValidator.ThrowIfMessageCannotBeDestroyed(messageDTO);
     return(GetDestroyMessageQuery(messageDTO.Id));
 }
Пример #33
0
        // Publish
        public bool Publish()
        {
            var publishedMessage = _messageController.PublishMessage(_messageDTO);
            if (publishedMessage == null)
            {
                return false;
            }

            _messageDTO = publishedMessage.MessageDTO;
            return true;
        }
Пример #34
0
 /// <summary>
 /// Destroy a message
 /// </summary>
 public static bool DestroyMessage(IMessageDTO messageDTO)
 {
     return MessageController.DestroyMessage(messageDTO);
 }
Пример #35
0
 public static string DestroyMessage(IMessageDTO messageDTO)
 {
     return(MessageJsonController.DestroyMessage(messageDTO));
 }
Пример #36
0
        public bool DestroyMessage(IMessageDTO messageDTO)
        {
            if (messageDTO == null)
            {
                throw new ArgumentException("Message cannot be null");
            }

            messageDTO.IsMessageDestroyed = _messageQueryExecutor.DestroyMessage(messageDTO);
            return messageDTO.IsMessageDestroyed;
        }
        private void ArrangeMessageDTOText(IMessageDTO messageDTO, bool doesTextExists, bool textContainsChars)
        {
            string text = doesTextExists ? textContainsChars ? Guid.NewGuid().ToString() : String.Empty : null;

            messageDTO.CallsTo(x => x.Text).Returns(text);
        }
Пример #38
0
 // Destroy Message
 public string GetDestroyMessageQuery(IMessageDTO messageDTO)
 {
     _messageQueryValidator.ThrowIfMessageCannotBeDestroyed(messageDTO);
     return GetDestroyMessageQuery(messageDTO.Id);
 }
Пример #39
0
 public string PublishMessage(IMessageDTO message)
 {
     return PublishMessage(new PublishMessageParameters(message));
 }
Пример #40
0
 public static IMessage PublishMessage(IMessageDTO messageDTO)
 {
     return MessageController.PublishMessage(messageDTO);
 }
Пример #41
0
 /// <summary>
 /// Destroy a message
 /// </summary>
 public static bool DestroyMessage(IMessageDTO messageDTO)
 {
     return(MessageController.DestroyMessage(messageDTO));
 }
Пример #42
0
 public static async Task <IMessage> PublishMessage(IMessageDTO messageDTO)
 {
     return(await Sync.ExecuteTaskAsync(() => Message.PublishMessage(messageDTO)));
 }
Пример #43
0
 // Generate message from DTO
 public static IMessage GenerateMessageFromMessageDTO(IMessageDTO messageDTO)
 {
     return(MessageFactory.GenerateMessageFromMessageDTO(messageDTO));
 }
Пример #44
0
 public static string PublishMessage(IMessageDTO messageDTO)
 {
     return MessageJsonController.PublishMessage(messageDTO);
 }
Пример #45
0
 public static string ToJson(IMessageDTO message)
 {
     return(message.ToJson());
 }
Пример #46
0
        public string PublishMessage(IMessageDTO messageDTO)
        {
            string query = _messageQueryGenerator.GetPublishMessageQuery(messageDTO);

            return(_twitterAccessor.ExecuteJsonPOSTQuery(query));
        }
Пример #47
0
 public string DestroyMessage(IMessageDTO messageDTO)
 {
     string query = _messageQueryGenerator.GetDestroyMessageQuery(messageDTO);
     return _twitterAccessor.ExecuteJsonPOSTQuery(query);
 }
 private void ArrangeQueryExecutorPublishMessageWithTextAndScreenName(string text, string recipient, IMessageDTO result)
 {
     _fakeMessageQueryExecutor
         .CallsTo(x => x.PublishMessage(text, recipient))
         .Returns(result);
 }
Пример #49
0
 private void ArrangeMessageFactoryGenerateMessage(IMessageDTO messageDTO, IMessage result)
 {
     _fakeMessageFactory
     .CallsTo(x => x.GenerateMessageFromMessageDTO(messageDTO))
     .Returns(result);
 }
 private void ArrangeQueryGeneratorDestroyMessage(IMessageDTO messageDTO, string query)
 {
     _fakeMessageQueryGenerator
         .CallsTo(x => x.GetDestroyMessageQuery(messageDTO))
         .Returns(query);
 } 
 private void ArrangeMessageFactoryGenerateMessage(IMessageDTO messageDTO, IMessage result)
 {
     _fakeMessageFactory
         .CallsTo(x => x.GenerateMessageFromMessageDTO(messageDTO))
         .Returns(result);
 }
Пример #52
0
 public static string PublishMessage(IMessageDTO messageDTO)
 {
     return(MessageJsonController.PublishMessage(messageDTO));
 }
Пример #53
0
 // Destroy Message
 public bool DestroyMessage(IMessageDTO messageDTO)
 {
     string query = _messageQueryGenerator.GetDestroyMessageQuery(messageDTO);
     return _twitterAccessor.TryExecutePOSTQuery(query);
 }
Пример #54
0
        // Destroy Message
        public string GetDestroyMessageQuery(IMessageDTO messageDTO)
        {
            if (!_messageQueryValidator.CanMessageDTOBeDestroyed(messageDTO))
            {
                return null;
            }

            return GetDestroyMessageQuery(messageDTO.Id);
        }
Пример #55
0
 public static async Task<IMessage> PublishMessage(IMessageDTO messageDTO)
 {
     return await Sync.ExecuteTaskAsync(() => Message.PublishMessage(messageDTO));
 }
Пример #56
0
 public static async Task<bool> DestroyMessage(IMessageDTO messageDTO)
 {
     return  await Sync.ExecuteTaskAsync(() => Message.DestroyMessage(messageDTO));
 }
        private void ArrangeMessageDTOText(IMessageDTO messageDTO, bool doesTextExists, bool textContainsChars)
        {
            string text = doesTextExists ? textContainsChars ? Guid.NewGuid().ToString() : String.Empty : null;

            messageDTO.CallsTo(x => x.Text).Returns(text);
        }