private ResendMessagesChannelModule GetTarget(
            bool setEstablishedState               = true,
            Mock <IChannel> channel                = null,
            IMessageStorage messageStorage         = null,
            IDeadMessageHandler deadMessageHandler = null,
            Event[] eventsToRemovePendingMessage   = null)
        {
            if (channel == null)
            {
                channel = _channel;
            }

            var target =
                ResendMessagesChannelModule.CreateAndRegister(channel.Object, _resendMessageTryCount,
                                                              _resendMessageInterval, messageStorage, deadMessageHandler: deadMessageHandler, eventsToRemovePendingMessage: eventsToRemovePendingMessage);

            channel
            .Setup(c => c.SendMessageAsync(It.IsAny <Message>(), It.IsAny <CancellationToken>()))
            .Returns((Message m, CancellationToken c) => ((IChannelModule <Message>)target).OnSendingAsync(m, _cancellationToken));

            if (setEstablishedState)
            {
                target.OnStateChanged(SessionState.Established);
            }

            _targets.Add(target);
            return(target);
        }
Exemplo n.º 2
0
        private ResendMessagesChannelModule GetTarget(bool bindToChannel = true)
        {
            var target = new ResendMessagesChannelModule(_resendMessageTryCount, _resendMessageInterval, _filterByDestination);

            if (bindToChannel)
            {
                target.Bind(_channel.Object, true);
                _channel
                .Setup(c => c.SendMessageAsync(It.IsAny <Message>(), It.IsAny <CancellationToken>()))
                .Returns((Message m, CancellationToken c) => ((IChannelModule <Message>)target).OnSendingAsync(m, _cancellationToken));
            }
            return(target);
        }