コード例 #1
0
        public void SetUp()
        {
            messageSender  = new FakeMessageSender();
            deferrer       = new FakeMessageDeferrer();
            ERROR_QUEUE    = new Address("error", "localhost");
            RETRIES_QUEUE  = new Address("retries", "localhost");
            ORIGINAL_QUEUE = new Address("org", "hostname");
            CLIENT_QUEUE   = Address.Parse("clientQ@myMachine");
            var busNotifications = new BusNotifications();

            satellite = new SecondLevelRetriesProcessor
            {
                FaultManager = new FaultManager(null, null, busNotifications)
                {
                    ErrorQueue = ERROR_QUEUE
                },
                MessageSender   = messageSender,
                MessageDeferrer = deferrer,
                InputAddress    = RETRIES_QUEUE,
                SecondLevelRetriesConfiguration = new SecondLevelRetriesConfiguration()
            };

            message = new TransportMessage(Guid.NewGuid().ToString(), new Dictionary <string, string> {
                { Headers.ReplyToAddress, CLIENT_QUEUE.ToString() }
            });
        }
コード例 #2
0
        public void The_default_time_out_should_be_1_day()
        {
            TransportMessageHeaderHelper.SetHeader(_message, SecondLevelRetriesHeaders.RetriesTimestamp, DateTimeExtensions.ToWireFormattedString(DateTime.UtcNow.AddDays(-1).AddSeconds(-1)));

            var retriesProcessor = new SecondLevelRetriesProcessor();
            var hasTimedOut = retriesProcessor.Validate(_message) == TimeSpan.MinValue;
            Assert.IsTrue(hasTimedOut);
        }
コード例 #3
0
        public void The_default_time_out_should_be_1_day()
        {
            TransportMessageHeaderHelper.SetHeader(_message, SecondLevelRetriesHeaders.RetriesTimestamp, DateTimeExtensions.ToWireFormattedString(DateTime.UtcNow.AddDays(-1).AddSeconds(-1)));

            var retriesProcessor = new SecondLevelRetriesProcessor();
            var hasTimedOut      = retriesProcessor.Validate(_message) == TimeSpan.MinValue;

            Assert.IsTrue(hasTimedOut);
        }
コード例 #4
0
        public void The_time_span_should_increase_with_10_sec_for_every_retry()
        {
            var retriesProcessor = new SecondLevelRetriesProcessor();
            for (var i=0; i<3; i++)
            {
                var timeSpan = retriesProcessor.Validate(_message);
                
                Defer();

                Assert.AreEqual(_expectedResults[i], timeSpan.Seconds);
            }          
        }
コード例 #5
0
        public void The_time_span_should_increase_with_10_sec_for_every_retry()
        {
            var retriesProcessor = new SecondLevelRetriesProcessor();

            for (var i = 0; i < 3; i++)
            {
                var timeSpan = retriesProcessor.Validate(_message);

                Defer();

                Assert.AreEqual(_expectedResults[i], timeSpan.Seconds);
            }
        }
コード例 #6
0
        public void SetUp()
        {
            satellite = new SecondLevelRetriesProcessor();
            messageSender = new FakeMessageSender();
            deferrer = new FakeMessageDeferrer();
            ERROR_QUEUE = new Address("error", "localhost");
            RETRIES_QUEUE = new Address("retries", "localhost");
            ORIGINAL_QUEUE = new Address("org", "hostname");
            CLIENT_QUEUE = Address.Parse("clientQ@myMachine");
            satellite.InputAddress = RETRIES_QUEUE;
            satellite.FaultManager = new FaultManager(new FuncBuilder(), null) {ErrorQueue = ERROR_QUEUE};
            
            satellite.MessageSender = messageSender;
            satellite.MessageDeferrer = deferrer;

            message = new TransportMessage(Guid.NewGuid().ToString(), new Dictionary<string, string>{{Headers.ReplyToAddress,CLIENT_QUEUE.ToString()}});
        }
コード例 #7
0
        public void SetUp()
        {
            satellite              = new SecondLevelRetriesProcessor();
            messageSender          = new FakeMessageSender();
            deferrer               = new FakeMessageDeferrer();
            ERROR_QUEUE            = new Address("error", "localhost");
            RETRIES_QUEUE          = new Address("retries", "localhost");
            ORIGINAL_QUEUE         = new Address("org", "hostname");
            CLIENT_QUEUE           = Address.Parse("clientQ@myMachine");
            satellite.InputAddress = RETRIES_QUEUE;
            satellite.FaultManager = new FaultManager(new FuncBuilder(), null)
            {
                ErrorQueue = ERROR_QUEUE
            };

            satellite.MessageSender   = messageSender;
            satellite.MessageDeferrer = deferrer;

            message = new TransportMessage(Guid.NewGuid().ToString(), new Dictionary <string, string> {
                { Headers.ReplyToAddress, CLIENT_QUEUE.ToString() }
            });
        }
コード例 #8
0
        public void SetUp()
        {
            messageSender = new FakeMessageSender();
            deferrer = new FakeMessageDeferrer();
            ERROR_QUEUE = new Address("error", "localhost");
            RETRIES_QUEUE = new Address("retries", "localhost");
            ORIGINAL_QUEUE = new Address("org", "hostname");
            CLIENT_QUEUE = Address.Parse("clientQ@myMachine");
            var busNotifications = new BusNotifications();
            satellite = new SecondLevelRetriesProcessor
            {
                FaultManager = new FaultManager(null, null, busNotifications)
                {
                    ErrorQueue = ERROR_QUEUE
                },
                MessageSender = messageSender,
                MessageDeferrer = deferrer,
                InputAddress = RETRIES_QUEUE,
                SecondLevelRetriesConfiguration = new SecondLevelRetriesConfiguration()
            };

            message = new TransportMessage(Guid.NewGuid().ToString(), new Dictionary<string, string>{{Headers.ReplyToAddress,CLIENT_QUEUE.ToString()}});
        }