예제 #1
0
        public void Prepared_batch_should_set_prepare_state()
        {
            var summary = new RetryOperation("abc123", RetryType.FailureGroup);

            summary.Prepare(1000);
            summary.PrepareBatch(1000);
            Assert.AreEqual(RetryState.Preparing, summary.RetryState);
            Assert.AreEqual(1000, summary.NumberOfMessagesPrepared);
            Assert.AreEqual(1000, summary.TotalNumberOfMessages);
        }
예제 #2
0
        public void Forwarding_should_set_forwarding_state()
        {
            var summary = new RetryOperation("abc123", RetryType.FailureGroup);

            summary.Prepare(1000);
            summary.PrepareBatch(1000);
            summary.Forwarding();

            Assert.AreEqual(RetryState.Forwarding, summary.RetryState);
            Assert.AreEqual(0, summary.NumberOfMessagesForwarded);
            Assert.AreEqual(1000, summary.TotalNumberOfMessages);
        }
예제 #3
0
        public void Skip_should_complete_when_all_skipped()
        {
            var summary = new RetryOperation("abc123", RetryType.FailureGroup);

            summary.Wait(DateTime.UtcNow);
            summary.Prepare(1000);
            summary.PrepareBatch(1000);
            summary.Skip(1000);

            Assert.AreEqual(RetryState.Completed, summary.RetryState);
            Assert.AreEqual(1000, summary.NumberOfMessagesSkipped);
        }
예제 #4
0
        public void Skip_should_set_update_skipped_messages()
        {
            var summary = new RetryOperation("abc123", RetryType.FailureGroup);

            summary.Wait(DateTime.UtcNow);
            summary.Prepare(2000);
            summary.PrepareBatch(1000);
            summary.Skip(1000);

            Assert.AreEqual(RetryState.Preparing, summary.RetryState);
            Assert.AreEqual(1000, summary.NumberOfMessagesSkipped);
        }
예제 #5
0
        public void Skip_and_forward_combination_should_complete_when_done()
        {
            var summary = new RetryOperation("abc123", RetryType.FailureGroup);

            summary.Wait(DateTime.UtcNow);
            summary.Prepare(2000);
            summary.PrepareBatch(1000);
            summary.Skip(1000);
            summary.Forwarding();
            summary.BatchForwarded(1000);

            Assert.AreEqual(RetryState.Completed, summary.RetryState);
            Assert.AreEqual(1000, summary.NumberOfMessagesForwarded);
            Assert.AreEqual(1000, summary.NumberOfMessagesSkipped);
        }